Strategic Thinking for Engineers
Senior Engineer / Tech Lead at Plato
Not too long ago, I was in a situation where my team was suffering from somewhat of an “organizational drag.” The team velocity was low. We seemed to be doing the more tactical or band-aiding type of work to just stop the leak. Focus on delivering the business value constantly without addressing the root cause kept adding to the technical and organizational debt. Often as ICs, we focus on the technical aspect of things and try to improve them. But in this particular situation, I felt the need to come out of my comfort zone and also get the team thinking about the larger problems.
I started by asking the existential questions of Five Whys, “Why does this team exist”, followed by “What do we do”, and “How do we do it”. I decided to take a stab at answering these questions for my team from my perspective.
Our main bottleneck seemed to be stemming from a dependency on the external (platform-like) team, which had competing priorities and an extreme lack of engineering resourcing. That was causing an impedance that mismatch with our needs. Our way to address this was to build things on our own if they couldn’t, even though we knew that it was incurring tech debt.
There were a lot of efforts made at the leadership level to align the two teams, but the top-down approach was yielding little results. I pointed out the inefficiencies and bottlenecks I had observed in the last six months, supporting those with lots of examples. I also demonstrated in many cases how Conway’s law
(https://www.thoughtworks.com/insights/blog/applying-conways-law-improve-your-software-development) was breaking down in this particular situation.
Decidedly, I didn’t just want to be pointing out problems. I also laid down potential solutions, both tactical -- what we could achieve in the next couple of quarters. One of the ideas I proposed was, in lieu of adding tech debt and building solutions in our service, to contribute directly to the dependent team’s code base as they were open to contributions due to resourcing crunch. Since we were spending efforts anyway, contributing to the source of truth meant less throwaway work and also alleviating some burden from the dependent team.
On a strategic level, it was crucial to identify how the two teams would operate most effectively in the long term. Laying down our contract and getting buy-in from engineering orgs, stakeholders and partners were critical. We needed to get out of our “MVP first” mindset and look at the bigger picture to align organizational goals better. Having support for our features built into the platform would bring us on the paved path for engineering development. In partnership with the other team, I laid out plans on how to build foundational elements in the platform team and transition the ownership to them in a phased manner.
Finally, I circulated my two-pager that contained all these ideas among my peers and leaderships of both teams. The idea was well-received. I was also given the opportunity to lead this initiative. This was a win-win situation for all involved and gave me a strong sense of purpose and motivation which was very rewarding.
- Sometimes it is essential to zoom out of our IC roles and take an honest and holistic look at how things are working and, more importantly, not working and coming up with a game plan.
- Too often, engineers are entangled in technical problems, including tech debt, missing on the opportunity to become more involved in organizational challenges. With their boots on the ground, many times they are better positioned to spot the bleeding and stop it.
Be notified about next articles from Shraddha Ladda
Senior Engineer / Tech Lead at Plato
Connect and Learn with the Best Eng Leaders
We will send you a weekly newsletter with new mentors, circles, peer groups, content, webinars,bounties and free events.