Getting Buy-In You’re a tech lead with an idea for a large project, one that would make your life easier. But to make it happen, you'll need help. The project requires additional developers and possibly some cross-team collaboration. That means getting it on the roadmap and securing resources. Whether this is your first proposal or not, there’s a clear path you can follow to get your project approved. Start by clearly defining the problem. To build a strong case for your project, you need to explain not just what’s happening but why it matters. A solid problem statement highlights the impact on your team, the broader project, or even the organization. It often takes time and research to get this right, so don’t rush it. A clear problem leads naturally to a strong solution. Find people who share the pain. Once you can clearly explain the problem, look for others who are affected by it. These might be fellow tech leads, your manager, a product manager, customer support agents, or anyone else who deals with the issue firsthand. The more people who agree the problem is real and worth solving, the stronger your case becomes. You'll also gain valuable insight and can continue refining your problem statement. Involving others builds momentum and strengthens your proposal. Work together on a solution. Once others are aligned on the problem, start drafting your best idea for how to solve it. Share it with your collaborators and ask for feedback. Update your proposal and share again as needed. You can go through several rounds until you reach a general consensus. This isn’t a final plan; it’s a starting point. Expect that some details will change once the work begins. Get leadership buy-in. Now it’s time to approach the decision-makers who can approve your project. Bring your clear problem statement and proposed solution, and walk them through the scope of the work and its potential impact. Be sure to highlight who you consulted, both to understand the problem and to shape the solution. Leaders want to see a strong return on investment, so clearly explain the cost of inaction and the benefits your project will deliver. Implement the solution. Once your project is approved, the real work begins. Keep the collaboration going throughout implementation to make sure the solution is doing what it’s supposed to. Check in with your collaborators as you hit key milestones, gather their feedback, and adjust as needed. A solution only works if it actually solves the problem, and you’ll know it’s working when others agree it is. Getting a big idea off the ground takes more than just technical vision. It requires clear communication, collaboration, and strategic thinking. By defining the problem, building support, shaping a solution with input from others, and making a strong case to leadership, you set your project up for success before a single line of code is written. The process may take time, but it builds alignment, earns trust, and increases your chances of delivering real impact. And as a tech lead, that’s exactly the kind of influence you want to have. Key Takeaways
Stuff I've Enjoyed this Month📝 JavaScript's new super power: Explicit resource management by Rezvan Mahdavi Hezaveh 🎬 Windsurf: An agent 10-20 steps head of you by AI Engineer 📖 Debrief to Win by Robert "Cujo" Teschner 📝 The LNO Framework Explained by Shreyas Doshi by Timoté Geimer 🎬 What is a vector database? by IBM Technology 📝 Build MCP tools like Ogres...with layers by Richard Moot 🎬 How Notion handles 200 billion notes (without crashing) by Coding with Lewis What I'm Working On🏠 Real Estate: Thankfully, it appears my rental properties all made it through the harsh midwest winter without any real damage or HVAC trouble. No news is good news! Follow my Instagram for real estate photos. 💻 Freelancing: I'm doing some freelance coding these days (10-15 hours per week). I'd love to work on your JavaScript, open source, AI, or any other project you think I could help with. Reply to this email if you have something in mind. 💻 ESLint:
Coaching for Tech Leads and Staff+ EngineersIf you're a tech lead or staff+ engineer, chances are your manager has no experience in your role. While they may be well-intentioned, they may not know how to help you grow in such a challenging position. That's where working with me can help. As a former tech lead and principal engineer at multiple companies, I learned firsthand the ins and outs of these roles. I work with my clients one-on-one to develop their leadership, communication, organization, and problem-solving skills to succeed in the upper ranks of the individual contributor track.
|
A once-per-month newsletter discussing topics important to senior-level software engineers, with a particular focus on frontend technology and leadership.
Agents and MCP Last month, Visual Studio Code officially launched agent mode. While similar features existed in VS Code forks like Cursor and Windsurf, this release put agents into the hands of the wider developer community. The result? A surge of interest in agents, and in MCP, as developers began experimenting at scale. It may be the most important milestone since GitHub Copilot first arrived, marking a real leap forward in how we build software. So, what is an AI agent? It's a program...
Thoughts on Getting Stuff Done One of this newsletter's main themes is the importance of the non-coding side of software engineering. Sure, knowing how to program gets you through the door with an entry-level job, but that skill alone only takes you so far—maybe to senior software engineer. Beyond that, you need to grow in areas like leadership, communication, and negotiation. CTOs and chief architects don’t spend their days buried in code; they get there by proving they can do one thing...
Thoughts on AI-First Development I spent the past month diving into Copilot Edits, testing whether I could go fully AI-first on my personal projects. Instead of jumping in and coding right away when I had an idea, I let Copilot take the first pass by following my instructions. What sets Copilot Edits apart from earlier versions is its ability to make changes across multiple files—not just suggest edits in a single one. Could this actually save me time and effort? Spoiler: yes, and in a big...