Navigating the journey from senior engineer to staff engineer can be daunting. Promotions are often confusing, and this particular leap can feel even more ambiguous.
As someone who has successfully transitioned to a Staff Engineer role, I want to share my insights and experiences to help you on this journey.
In this article, I’ll address key questions you might have, like:
What is a Staff Engineer and how does the role differ from a Senior Engineer?
What do you need to become a Staff Engineer?
How do you know you’re ready?
Who do you talk to for guidance?
I’ll also share my personal story and a structured six-month plan to help you achieve your goals. Let’s dive in!
If you’d also like to watch this as a video, check this out:
Here’s what we’ll cover:
My Path to Becoming a Staff Engineer
Over the last decade, I’ve worked at companies like PayPal and Slack, progressing from a Junior web developer to a Staff Engineer. Here’s a quick timeline:
Junior Web Developer at Telus Communications in 2013
Web Developer at Pix System in 2017
Software Engineer 2 at PayPal in 2018
- Promoted to Senior Software Engineer in 2019 and later Staff Engineer in 2021.
Lead Member of Technical Staff at Slack in 2022
- Worked for three years before transitioning to full-time content creation.
One key lesson I’ve learned: It’s not just about what you do – it’s about who knows what you do.
What is a Staff Engineer?
A Staff Engineer is a technical leader who drives their team’s effectiveness. You’re judged not only by the features you deliver but also by how you enable and grow your team. It’s not just about code anymore. Staff engineering is a blend of technical expertise, leadership, and mentorship.
The Four Pillars of Staff Engineering:
Technical excellence: Staff Engineers build scalable systems, evaluate technologies, and make critical technical decisions while managing technical debt.
Organizational impact: They solve problems that extend beyond their team, acting as the communication link between various stakeholders.
Mentorship and team development: Staff Engineers grow their team by helping others succeed, onboarding new members, and leveling up their colleagues.
Project leadership: They ensure projects are delivered on time, breaking down complex problems into manageable pieces while leading cross-functional initiatives.
Story Time: Building Font Selection in Slack
As a Staff Engineer, I’ve had the privilege to work on some truly exciting projects. Not only have these opportunities helped me grow my technical expertise, but they’ve also taught me critical interpersonal skills – like team coordination, estimation, overcoming imposter syndrome, managing burnout, and effective delegation. These are essential qualities for any engineer looking to advance their career.
One standout project was the Font Selection feature in Slack. On the Appearance tab in Slack’s Preferences, users can now select a font – let’s say, Comic Sans – and instantly see the change reflected everywhere in the application.
This project was a classic example of a greenfield initiative: it had never been done before in Slack. That meant navigating technical debt, considering migrations to new systems, and sometimes deprecating outdated components. It also required collaboration with teams across the organization, because the blast radius of a feature like this was huge. The work impacted not just one area, but the entire user experience.
Being a technical leader on such a project was both challenging and rewarding. It stretched my skills and reinforced the importance of cross-functional teamwork and technical vision in delivering high-impact features.
The Key Differences between Staff Engineers and Senior Engineers
Senior Engineers are excellent executors who can take complex requirements and turn them into working software. They solve technical problems efficiently and mentor junior developers on their team.
Staff Engineers are strategic thinkers who identify what problems need to be solved in the first place. They look across the entire organization to find opportunities for impact and then create projects to address them.
Senior Engineers are typically assigned projects by their manager or team lead and work on priorities set by their leadership. They excel at executing defined work and solving complex problems within their domain.
Staff Engineers, however, operate on a bigger scale beyond their team. They proactively look for improvements in the engineering organization and code architecture. Rather than waiting for direction, they chart out a plan to improve the codebase – figuring out performance optimizations, analyzing customer feedback, enhancing developer productivity, reducing technical debt.
When Staff Engineers identify these improvement areas, they don’t just raise tickets or file requests. They take ownership of crafting solutions by defining a project scope, writing a tech spec, outlining deliverables and creating architectural designs. This shift from reactive to proactive work represents one of the key transitions in moving from senior to staff level.
Think of it this way: Senior Engineers are given projects, Staff Engineers make projects.
Staff Engineering isn't about being a better individual contributor. It's about multiplying the effectiveness of everyone around you and growing others.
Staff Engineer vs Manager Role
While Staff Engineers interview new candidates, mentor engineers, provide feedback, and chart out technical direction, their role significantly differs from a Manager-level position in most companies. Although some responsibilities overlap, there are key distinctions between these two career tracks.
Staff Engineers do not:
Participate in the hiring and firing decisions.
Have input in promotion process beyond providing feedback for the employee
Have direct reports
Hold formal management authority
The fundamental distinction:
Staff Engineer: Technical leader who influences through expertise and mentorship
Manager: Combines HR, technical, and project leadership with formal authority
In most organizations, Staff Engineering and Management represent two distinct career advancement paths, allowing technical professionals to grow in seniority and impact without transitioning into people management roles.
Why You Might Not Be Promoted Yet
Here are five common reasons holding people back:
Waiting to Be Told You’re Ready
Many people fall into the trap of waiting for their manager to tap them on the shoulder and say, "You're ready for promotion." This passive approach can keep you stuck for years. The reality is that nobody will come to you to hand you anything. Promotion committees don't promote people based on potential – they promote based on evidence of current performance at the next level.
Fix: Start performing like a Staff Engineer today. Take ownership of cross-team initiatives, mentor junior developers, and drive technical decisions. Share your accomplishments with the broader team.
When you act like a Staff Engineer consistently for 6-12 months and everyone knows how well you are performing, the promotion becomes a formality rather than a leap of faith.
Action Item: Identify one area where you can begin operating at Staff level this month. Whether it's leading a technical design review or mentoring a junior engineer, start demonstrating the behaviors you want to be recognized for. Share status updates on a regular cadence – daily or weekly depending on the team and project, and share challenges encountered and solutions developed. This will get you not only noticed, but also help to create a balance of self-promotion and knowledge sharing.
Believe in yourself – don’t wait for external validation.
Imposter Syndrome
That voice in your head saying "I'm not smart enough" or "I don't know enough" is imposter syndrome. Everyone feels like an imposter at some point. But successful people take action DESPITE feeling like an imposter.
If you let imposter syndrome dictate your actions or prevent you from taking action, you'll hold yourself back from achieving great things. The people you look up to online have also faced imposter syndrome. Most successful people encounter it weekly, if not daily. The difference is that they learn to set it aside and create a plan to move forward.
The Fix: Reframe your mindset. Instead of thinking "I don't know X," think "I don't know X yet." Focus on your growth trajectory, not your current knowledge gaps. Remember, you were hired for your potential, not because you already knew everything.
Action Item: Keep a "brag document" where you document your accomplishments weekly. When imposter syndrome strikes, review this evidence of your capabilities and impact. Over time, you'll notice that you overcame things that felt hard or impossible in the moment.
You can do hard things!
I made a detailed video highlighting strategies to overcome imposter syndrome. You can check it out here:
Waiting to Become a Deep Technical Expert
Many engineers think they need to know everything about every technology before they can get promoted. This "I must be perfect" thinking will hurt your career. Staff Engineers don't need to know everything. The most important skills you need to know is how to find answers and help others solve hard problems.
The Fix: Learn a little about many things instead of learning everything about one thing. A Staff Engineer who knows some things about databases, systems, and websites will be able to perform and help more effectively than someone who only knows one thing really well. You'll learn more when you work on big projects as a Staff Engineer.
Action Item: Pick 2-3 tech areas that you don't know much about but your company uses, or pick a new tech stack. Spend 30 minutes each week learning about each one. Focus on how they work with the systems you already know.
If you don’t believe in yourself, why should others?
Avoiding Politics
Many engineers think that talking about their accomplishments is "playing politics" and they don't do it. This will ruin their career. Telling people about your wins isn't boastful bragging – it’s necessary. Your boss and the promotion committee can't help you if they don't know what you did.
The Fix: Reframe self-advocacy as data sharing. You're providing factual information about your impact to help leadership make informed decisions. Create a monthly update template that includes: projects completed, problems solved, metrics improved, and people mentored. You are sharing facts, not making up stories.
Action Item: Start a bi-weekly email to your manager highlighting your key contributions. Include specific metrics when possible: "Reduced API response time by 40%, impacting 10,000 daily users" rather than "Improved API performance."
If you don’t toot your own horn, who will?
Struggling with Networking
Internal networking feels awkward to many engineers, but it's crucial for Senior-level and Staff-level promotion. Staff Engineers need to influence across the organization, which requires relationships with people beyond their immediate team.
The Fix: Approach networking as building genuine professional relationships rather than transactional interactions. Start with curiosity about others' work. Ask questions like "What are the biggest technical challenges your team is facing?" or "What would make your team more effective?"
Action Item: Set a goal to have one coffee chat monthly with someone outside your immediate team. Focus on learning about their challenges and how your expertise might help. Share what you are working on and what goals you have in mind. These relationships often lead to collaboration opportunities that demonstrate your Staff-level impact.
How to Become a Staff Engineer
Every company's promotion process is different, but here are some general steps that work at most places:
1. Evaluate Yourself
Create a requirements document using your company's engineering ladder (or a publicly available template like the Block Engineering Career Ladder). Go through each requirement honestly and mark them as either "Achieving" or "Needs Work."
How to do it well:
Be brutally honest with yourself. It's better to underestimate than overestimate your current level
If something feels unclear, ask for examples of each requirement from your manager or other Staff Engineers
Use concrete evidence from your work and links to PRs, not just your feelings about your abilities
Update this document every 1-2 months to track your progress
Common mistake: Being too generous with your self-assessment. If you're not 100% confident you're "Achieving" something, mark it as "Needs Work."
2. Discuss Gaps with Your Manager
First, schedule a one-on-one meeting with your manager to review your evaluation. Work together to identify specific projects that can help you grow in areas where you need improvement. This meeting can feel painful, but it is extremely helpful in level setting. Request feedback on your assessment to see if they agree or disagree.
After evaluation with manager:
Have 2-3 specific areas you want to focus on
Ask about upcoming projects that could help you develop these skills
Plan out a process for achieving those goals.
What to ask:
"What projects in the next 6 months could help me develop [specific skill]?"
"Who are the Staff Engineers I should learn from?"
"What does success look like for someone at my level trying to get promoted?"
Follow-up: Send a summary email after the meeting with your agreed-upon focus areas and next steps.
3. Build a Support Squad
Promotion committees want to hear from multiple people about your impact. Your manager's opinion alone isn't enough. So it’s a good idea to build a support squad for yourself. These are people other than your manager, such as mentors, mentees, leadership folks or inspiring colleagues, who can vouch for your skills and impact during promotion discussions. These are essentially your “sponsors”.
Who to include:
A skip-level manager (your manager’s manager) who can speak to your organizational impact
Engineers who have worked with you on cross-team projects
Engineers you've mentored who can talk about your leadership and teaching skills
Staff Engineers from other teams who can validate your technical decisions
How to build these relationships:
Volunteer for cross-team projects and initiatives
Offer to help other teams with technical challenges in your area of expertise
Attend company tech talks and ask thoughtful questions
Share your knowledge through internal presentations or documentation
These relationships should be genuine, not transactional. Focus on offering value first.
4. Perform Like a Staff Engineer
Promotion committees promote people who are already performing at the next level, not those who might be able to perform at that level. Start acting as a Staff Engineer now. Deliver impactful projects, mentor others, and take ownership of technical decisions.
How to get started:
Pick one area where you can start demonstrating Staff-level impact this month
Volunteer for the next cross-team project or technical initiative
Ask your manager if you can lead the technical design for an upcoming feature
Start mentoring a junior engineer and document your impact on their growth
Share knowledge through documentation, presentations, and code reviews
Identify and address technical debt that impacts multiple teams
Evaluate new technologies and make recommendations
Evaluation Criteria
To transition to Staff Engineer, you need to demonstrate consistent excellence across multiple dimensions. It helps to understand the evaluation criteria and take on projects that showcase the following -
Deep Technical Expertise
You’re expected to:
Write detailed technical specs for others to follow.
Define shared standards (e.g., caching layers, API contracts).
Improve system-wide architecture across teams (e.g., microservices communication that lowers latency by 40%).
Examples of projects that exhibit these skills:
Architecting scalable, fault-tolerant systems (e.g., disaster recovery for payment processing).
Redesigning systems like user login to support 50M+ daily users with 99.99% uptime.
Problem Solving & Innovation
You’re expected to:
Build reusable tools or frameworks widely adopted by others.
Lead new tech adoption (e.g., Kubernetes, chaos engineering).
Set engineering-wide standards through your innovations.
Examples of projects that exhibit these skills:
Fixing infinity mirroring problem in video recording software. (I did this and filed my first patent!)
Solving memory leaks or production crashes.
Creating innovative solutions that reduce cost or improve performance
Technology Leadership
You improve the team's quality standards and lead technical decisions, such as by-
Making thoughtful buid-vs-buy decisions
Reducing technical debt
Establishing best practices and ensure team follows them
Leading tech migrations while ensuring 0 downtime.
Giving helpful, educational code review feedback
Setting team-wide coding, testing, and review standards
Creating templates, guides, and documentation that improve efficiency.
Mentoring Engineers
You help other engineers grow by:
Guiding junior/mid-level engineers through complex systems.
Reviewing designs and code thoughtfully.
Teaching system design, architecture, and debugging skills.
You might:
Create learning plans (e.g., 6-month onboarding curriculum).
Host workshops (e.g., debugging production, distributed systems).
Help others think like system designers.
Help other engineers get promoted.
How to Build Your Staff Engineer Portfolio
Think of your portfolio as your promotion story. It should represent your accomplishments over the past 12–18 months, backed by clear proof. You’re not just showing what you’ve built – you’re showing how you think, how you lead, and the impact you’ve made.
What to Include
Your portfolio should be 10-15 pages that tell a compelling story about your technical leadership. Here’s what makes a strong Staff Engineer portfolio:
Executive summary: One-page overview highlighting your most significant contributions
Technical leadership projects: 3-4 major initiatives presented as detailed case studies
Metrics dashboard: Quantified impact across performance, cost savings, and adoption rates
Peer testimonials: External validation from engineers across different teams
Growth trajectory: A 12–18 month view of how your scope and influence have grown.
How to Structure Each Case Study
Each case study should follow a structured format that tells a complete story. First, you’ll want to discuss the problem statement: what was broken? Who was affected? Why did it matter?
Then cover the technical approach you took. You can discuss the high-level architecture, key decisions, and trade-offs you considered. After this, you can discuss how you implemented everything – the timeline, how you coordinated your team, and any technical challenges you faced.
Finally, you’ll share your results and discuss the business and technical impact with before-after metrics. It’s also a good idea to share any lessons learned and talk about what you'd do differently and how it contributed to your growth.
The Promotion Process
Most companies use a committee-based approach where your manager advocates for your promotion using a comprehensive packet of evidence. The committee asks one simple question: Do we know this person and do we trust their credibility?
Your manager submits a promotion packet to the committee and you are evaluated against everyone else who is up for promotion. To help your manager put your best foot forward in front of the committee, I recommend that you build a promotion packet with your manager. This packet includes a few key components.
1. Career Plan & Engineering Ladder Evaluation
This is the same document that you have hopefully been working on with your manager for a while. This document maps your current performance against your company's engineering ladder criteria. This isn't just a self-assessment – it's a strategic document with concrete evidence for each competency level.
Key elements to include:
Line-by-line evaluation against ladder criteria
Specific examples and proof points for each skill area
Clear demonstration of "Achieving" performance across all relevant categories
Identification of any gaps and plans to address them
2. Portfolio & Proof of Accomplishments
Make sure your portfolio explains not just what you accomplished but the impact you made along with proofs. It should include:
Code examples and design documents
Finished projects and improvements you made
Feedback from users and coworkers
Comments from code reviews and awards you got
3. Brag Document
We’ve talked about this a bit already, but this detailed log serves as your professional highlight reel, demonstrating both quantitative metrics and qualitative growth over your review period.
Quantitative metrics to track:
Pull requests created and reviewed
Features delivered and timeline performance
Code review discussions
Bug fix rates and system improvements
Performance optimizations achieved
Qualitative accomplishments to document:
Technical leadership moments
Cross-functional collaboration successes
Mentoring and knowledge sharing contributions
Innovation and creative solutions implemented
Growth documentation:
New technologies learned and applied
Leadership opportunities taken
Feedback incorporation and skill development
4. Testimonials
Get recommendations from teammates, other departments, people you helped, and customers. Ask them to give specific examples.
Your packet should be organized, based on facts, and show how you've grown. Make it simple for the committee to see your value and for your manager to speak up for you.
A Six-Month Plan to Get Promoted
Here’s a structured approach to help you navigate your promotion:
Month 1: Evaluate Yourself
Review your company’s engineering ladder and assess your gaps. If they don't have one, use a publicly available career ladder.
Month 2: Create a Plan
Discuss your evaluation with your manager. Identify projects to address your gaps.
Month 3: Work on Impactful Projects
Start networking with your skip-level manager and other stakeholders.
Month 4: Gather Proof
Document your work, seek feedback, and build evidence of your contributions.
Month 5: Review Progress
Update your career doc and review it with your manager.
Month 6+: Keep Going
The process may take longer than six months, but persistence and structure will help you get there. Don’t worry if it does take longer – that doesn’t mean you’re not qualified or won’t make it. Keep working at it.
Wrapping Up
Promotion isn’t always about skills – it’s also about timing and organizational factors. If you’re feeling burnt out or unsure about continuing in tech, it’s okay to pause or reconsider your path.
Take charge of your career. Advocate for yourself and share your accomplishments. And if you need personalized guidance, book a one-on-one session coaching session with me to create a personalized plan for you: https://topmate.io/shrutikapoor08.
If you enjoyed this article, share it with someone you know and spread the love.
Connect with Me:
Sign up for articles like this: http://bit.ly/shruti-newsletter
Discord: bit.ly/shruti-discord
Twitter: @shrutikapoor08
Instagram: https://www.instagram.com/itsshrutikapoor/