As I look back, one phrase stays with me
“You are expecting something from nothing.” That may have been true at the start, but by the end, we had built something extraordinary—together. The boat is now sailing with bells and vessels, and the journey has just begun.
It was during one of the most challenging periods—COVID-19 had shaken the world, and everyone was adapting to remote work, uncertainty, and pressure. Amidst this chaos, I found myself in the middle of a critical transformation project for a steel detailing company. The task – enhance a fragmented product suite into a cohesive, scalable solution. What started as a project to develop a file manager evolved into a complete overhaul of the product’s architecture, team dynamics, and integration strategy.
Let me take you through this journey, of frustrations, late-night conversations, and eventually, a transformation driven by middleware and teamwork.
The product was an ambitious suite, designed to serve the intricate needs of the steel detailing industry. It included modules for Project Management, Document Management, RFIs, Design Management, Reports, and, of course, the File Manager. The technology stack was a mix of JSPs and Java Services, tightly coupled with stored procedures scattered across the database.
From the outset, several challenges were evident
- UI Limitations: JSPs struggled to adapt to the rapidly evolving needs of the business.
- Dependency on Specialists: Only two UI experts were available, making the team heavily reliant on them for reviews and corrections.
- Database Sprawl: Stored procedures were used extensively, creating silos and making development cumbersome.
- Design Complexity: A JavaScript-based steel model renderer added another layer of technical complexity, catering to real-time rendering needs for design engineers.
The environment was far from cohesive. Developers were exhausted, the project manager was frustrated, and the lack of a robust architecture became a bottleneck for innovation. Misaligned expectations further fueled frustrations, as the business demanded rapid delivery without understanding the time and effort required.
Frustrations Boiling Over
The environment was intense. Developers were pushed to their limits as the pace of requirements far outstripped the delivery capacity. I could feel the tension in the air during casual conversations. Developers vented their frustrations, describing how deadlines felt unrealistic, with the BAU demanding, “I want this by tomorrow!”
Lunch table discussions were often more about venting than eating, with team members divided into groups based on shared grievances. Miscommunication was rampant, and occasionally, attitudes flared. I remember overhearing exchanges like, “Why do they think we can work miracles?” or “They don’t even understand what they’re asking for!”
Our project manager, a friend of mine, would often sit beside developers, encouraging them to push through. Yet, I knew she felt bad for the pressure they were under. The demos were another sore point, often planned without proper understanding of estimations. “You are expecting something from nothing,” I once told the management during a particularly tough meeting.
One late evening, around 11 PM IST, I found myself on a one-on-one call with the project sponsor. The team’s frustrations, the fragmented architecture, and the lack of alignment were weighing on me. I asked candidly, “Can we relook at the design? It will be an investment for you, maybe six months, but it’s worth it.”
The response surprised me, “Yes, we are with you. Convince me.”
That was the moment everything changed. It wasn’t just about convincing the sponsor—it was about rallying the team, realigning the vision, and charting a new course.
That conversation sparked a turning point. The next morning, I sketched out an entirely new tech stack,
- Separation of Concerns: Clearly defined layers for UI, middleware, and microservices.
- Microservices Architecture: Independent, modular services tailored to specific functionalities.
- Multi-Tenancy: A robust architecture for scalability and seamless operations.
- Event-Driven Design: Leveraging messaging for real-time communication and orchestration.
- Right Database Choices: Simplifying the sprawl of stored procedures with JPA for cleaner data access.
Rallying the Troops
The real challenge was not the technology—it was bringing the team and stakeholders on board. I called a meeting with all key stakeholders, booked a conference room, and laid out the new vision.
I told the team, “The boat has left the harbor, and there’s no looking back. Those who want to be part of this journey can onboard.”
It was a moment of clarity. For the first time, we had a unified direction.
Actions That Turned the Tide
- Identifying the Wrong Architecture
- The tightly coupled nature of the old system was the root cause of most inefficiencies. Recognizing this allowed us to propose a more modular microservices architecture.
- Introducing Microservices
- We conducted workshops to train the team on microservices concepts.
- Templates for design and development were created to standardize practices.
- A DevOps and testing plan ensured smooth deployments and quality assurance.
- Adopting Progressive Web Applications (PWA)
- Switching to PWAs for the UI enabled faster, more responsive interfaces that could adapt to business needs.
- Redefining Project Management and Processes
- A new project manager and lead were appointed to bring structure.
- War rooms were set up for intense focus on critical issues.
- Empowering the Team
- Identifying the right infrastructure team ensured that we had the tools needed for development.
- Clear responsibilities were defined, reducing dependency on individual specialists.
A Vision Realized
The re-architected suite now had 13 integrated modules, each seamlessly interacting within the multi-tenant architecture. The middleware was embedded within the product—tailored to the unique needs of the steel detailing industry. This embedded approach ensured that the product was tightly aligned with the domain while remaining robust and scalable.
A Story of Transformation
Looking back, the journey wasn’t just about technology. It was about addressing misaligned expectations, fostering collaboration, and creating a culture of accountability. The frustrations that once boiled over at lunch tables turned into a collective determination to succeed. The attitude of “we’re in this together” became the driving force behind the transformation.
Sailing Forward
That evening, when the go live happened, I felt a sense of satisfaction I hadn’t felt in months. The team was aligned, the architecture was redefined, and the boat had truly left the harbor. Today, the product is a testament to what can be achieved when enterprise integration principles are applied thoughtfully—not just as a technical solution, but as a way to unify people and processes.
As I look back, one phrase stays with me:
“You are expecting something from nothing.” That may have been true at the start, but by the end, we had built something extraordinary—together. The boat is now sailing with bells and vessels, and the journey has just begun.
En See