Growth in a downturn
“A common frustration being felt in my network is that progression opportunities have been slim since the recent economic downturn. I have been speaking to people who are on both sides of this dilemma: those who have been denied progression opportunities themselves, and those who have been unable to secure them for their best staff.”
💼 Progression opportunities are limited during economic downturns.
💰 Companies often prioritize cost control during tough economic times.
🤝 Middle managers should focus on what they can control: the narrative, trust, and support for their team members' progression.
🎯 Setting clear expectations and working on competencies can prepare employees for future promotions.
💡 Investing in increasing impact, even when promotion isn't possible, can position individuals well for future opportunities.
📅 Creating a workback plan with a manager helps outline goals and steps for career progression.
🚀 Demonstrating skills and domain knowledge can make internal candidates strong contenders for senior roles.
⚠️ Be aware of companies that take advantage of employees operating at a higher level without commensurate rewards.
Beyond metrics: creating cultures of engineering excellence
McKinsey’s report “Yes, you can measure developer productivity” has caused a strong reaction in the engineering community.
📈 McKinsey's report on developer productivity suggests metrics-driven management but overlooks the importance of culture and leadership.
🌟 The last decade has seen a technology boom, making developer productivity a critical concern for organizations.
👥 The role of leadership is crucial in achieving engineering excellence; it's not just about the right metrics.
🚀 Cultivating cultures of excellence requires strong engineering leadership and role models.
🧠 Experts leading experts can lead to better decision-making and career growth.
📊 Metrics are important as indicators but become problematic when used as targets, affecting autonomy and judgment.
📣 The engineering community should prioritize leadership and culture in shaping a culture of engineering excellence.
You can also check out Kent Beck & Gergely Orosz’s response to the McKinsey report.
Another take from Dan North - a vital point if you ask me.
Performance & Compensation (for Eng Execs)
An overview of the performance and compensation approaches.
📝 Uber's original “T3B3” performance process focused on direct feedback without documentation.
🤝 No consensus exists on ideal performance and compensation processes.
💼 Balancing top performers and avoiding bias in compensation systems is a challenge.
🔄 Organizations work within various systems, each with tradeoffs.
🎯 Performance involves written feedback, peer input, and leveling rubrics.
🏆 Calibration meetings ensure consistent promotion decisions.
👎 Demotions, though rare, may occur with or without compensation adjustments.
🗣️ Real-time feedback is crucial, especially for senior employees.
🌐 Managing unfamiliar functions requires learning and high-judgment input.
💰 Compensation involves benchmarking, compa ratios, and budget alignment.
⏲️ Frequency varies in performance cycles; aim for effectiveness.
😕 No one-size-fits-all solution; prioritize effectiveness.
🔄 Recommended frequency: biannual performance, annual promotions/compensation.
📆 Avoid processes anchored to employee start dates.
💡 Prioritize effective over perfect processes.
🤝 As an executive, make trade-offs for efficiency and effectiveness.
🚀 Stay open to team feedback and adapt processes if necessary.
The Journey to Staff Engineer: Main takeaways
A great interview with staff engineers about their journey.
📖 Ryan: Ryan started at Meta as a new grad (L3) and reached Staff Engineer (L6) in 3 years. He made video processing at Instagram 94% cheaper and emphasized the importance of making your work visible and sharing results.
📖 Zach: Zach worked at Netflix and Airbnb, and now runs his own company. He highlighted the value of vertical and horizontal impact, mentioning how small improvements can lead to significant savings.
📖 Carly: Carly, a Staff Engineer at Activision, stressed the significance of focusing on business and financial pain points. She advised putting dollar values in performance reviews and becoming known by non-technical decision-makers.
📖 Lee: Lee, a Staff Software Engineer at Google, emphasized the importance of building relationships and being known, even if social skills aren't your strength. He recommended being an icebreaker, answering questions, and radiating positivity.
📖 Rahul: Rahul, a Staff Software Engineer at Meta, discussed the importance of having a portfolio of impactful work. He recommended working on side projects alongside your main project to maximize impact.
💡 Commonalities & closing thoughts: Key takeaways from all the engineers' journeys included making work visible, sharing results, learning to lead without direct power, working on high-impact and complex projects, and realizing that promotions may take time and effort.
On Sizing Your Engineering Organizations
“Hiring is often proposed as a solution to a number of thorny tensions that arise when building and operating a product. Not enough getting done? Hire more people. Too many bugs? Hire people to work on bugs. Stability issues? Hire senior/infra/sre/backend type people. Tech debt slowing down important work? Hire a new team to build features while your core team pays down tech debt. Growth slowing? Hire a growth team. What’s great about this model is no one has to compromise on their priorities. What’s less great about this model is it doesn’t work.”
💡 Effective software development relies on small, focused, cross-functional teams (4-12 members) with autonomy and clear goals.
💼 The size of your engineering organization should be determined by the number of concurrent top priorities you want to handle simultaneously.
🌐 Larger organizations require upgraded infrastructure, including better management, clear hierarchies, and technical standards, to manage coordination effectively.
🔄 Thrash, caused by changing plans and overconfidence in them, leads to technical debt and reduced productivity.
📋 Proper onboarding of new team members is crucial for productivity and attrition management in growing organizations.
🚀 Prioritization, planning, and effective communication are essential for managing team size and growth successfully.