--forcepushed--fp
  • Home
  • Articles
  • Resources

Build smarter, ship faster, and stand out from the crowd.

Subscribe or follow on X for updates when new posts go live.

Follow on X

Software Engineers at Every Stage

Introduction

Being a Software Engineer means a lot of things. At a tiny startup, it means literally everything. At a large company, it might mean a very small slice of a very large pie. But the journey in between? That’s where things get weird, wonderful, and occasionally soul-crushing.

This post will walk through how the role of Software Engineer evolves at 4 pivotal company sizes: 3, 10, 25, and 100 engineers (or employees, if engineering is the only department). We’ll explore how responsibilities shift, which hats you're forced to wear (and which to avoid), what success looks like, and the pitfalls that await. We’ll also throw in some charts and snark to keep it spicy.

📏 Phase 1: 3 Engineers – Welcome to Chaos

Vibe

  • Feels like building a spaceship with duct tape, Red Bull, and optimism
  • Every deploy is a prayer
  • Everyone is "Head of Everything"

Key Responsibilities

  • Build everything: frontend, backend, infra, test, deploy
  • Debug production issues live (yes, during the demo)
  • Write docs (ha, just kidding, you won’t have time)

Hats to Wear

  • Full-stack dev
  • DevOps
  • QA
  • IT support
  • Project Manager (unpaid and untrained)

Hats to Avoid (But Often Can't)

  • Product Manager: It’s dangerous when you're both building and deciding what to build. Bias kicks in hard. Ideally, a founder or customer should fill this gap.
  • Designer: Unless you’re trained, leave the branding and UX to someone else—or buy a UI kit.

What Success Looks Like

  • The product exists and doesn’t immediately crash
  • You’re shipping weekly (or daily!)
  • You’re still talking to customers

Pitfalls

  • Burnout from wearing too many hats
  • Reinventing wheels better purchased (auth, email delivery, etc.)

🛠️ Phase 2: 10 Engineers – Slightly Less Fire, Still No Fire Dept

Vibe

  • You can breathe between builds, maybe even schedule a meeting
  • You have teams now (in name, if not in org chart)

Key Responsibilities

  • Own large product chunks
  • Improve architecture for speed and scalability
  • Handle integration work, mentor new hires

Hats to Wear

  • Domain Owner
  • Tech Lead (even unofficially)
  • On-call rotation member

Hats to Avoid

Scrum Master: Let a PM or EM run the ceremonies.

QA Lead: Automated testing should be scaling. If you’re manually checking everything, something is wrong. Use a tool or hire QA help.

What Success Looks Like

  • You write less, review more
  • You’re building systems instead of scripts
  • You avoid becoming the bottleneck

Pitfalls

  • Still stuck doing QA/infra because there’s no one else
  • Too much tribal knowledge in your head, not enough in the repo

⚙️ Phase 3: 25 Engineers – Real Org, Real Problems

Vibe

  • Meetings are now a thing
  • You’re asked to mentor, even if you don’t feel ready
  • Specialization creeps in

Key Responsibilities

  • Own a feature area or service
  • Lead projects cross-functionally
  • Handle performance optimization, reliability work

Hats to Wear

  • Tech steward
  • Incident responder
  • Codebase historian

Hats to Avoid

  • Unassigned project manager: If there’s no PM, escalate. Engineers doing project wrangling at this size means leadership failed to hire appropriately.
  • Solo maintainer: Stop being the only one who understands X subsystem. Document it. Pair on it.

What Success Looks Like

  • Other engineers can build on your work without you
  • You’re unblocking others more than you’re blocked
  • You’re helping set direction, not just executing

Pitfalls

  • Invisible promotion criteria
  • Getting dragged into too many meetings with no outcomes

🧱 Phase 4: 100 Engineers – The Enterprise Era

Vibe

  • There are org charts now
  • You don’t know everyone’s name
  • Tools replace tribal knowledge

Key Responsibilities

  • Design scalable, maintainable systems
  • Drive architectural conversations
  • Mentor consistently and visibly

Hats to Wear

  • System owner
  • Culture carrier
  • Reviewer and quality bar setter

Hats to Avoid

  • Hero Coder: The era of “just doing it myself” is over. It scales poorly and makes you a bottleneck.
  • Shadow PM: Still a trap. Let Product own roadmap tradeoffs. Advocate, don’t dictate.

What Success Looks Like

  • Your contributions are more in guidance than lines of code
  • Teams ship independently because of your foundations
  • You have boundaries — and hold them

Pitfalls

  • Becoming “the guy/gal for X” and stuck in reactive mode
  • No longer learning — only maintaining

🧾 Summary Table

PhaseKey ResponsibilitiesHats to WearHats to AvoidSuccess Looks Like
3EverythingAll the hatsPM, DesignerProduct exists, barely crashes
10Own features, scale infraDomain Owner, Tech LeadScrum Master, QA LeadSystemized delivery, not just hero coding
25Lead projects, reliabilityIncident responder, MentorPM, Solo MaintainerUnblocking others, well-documented code
100System design, guidanceReviewer, Culture CarrierHero Coder, Shadow PMIndependent teams thrive due to your work

✅ Advice for Software Engineers at Any Stage

  • Learn to say no early. Boundaries are a superpower.
  • Document like you’re going to disappear tomorrow. Because you might.
  • Don’t wear the PM hat unless paid for it. Especially if it comes with no authority.
  • Push leadership to staff properly. If you’re still QA-ing your own stuff at 100 people, that’s a leadership failure.
  • Refuse to be the bottleneck. Your goal is to make yourself obsolete — in the best way.
  • Stay curious. Don’t let process replace learning.
Software engineering is the only job where you will be writing production code while also fixing the printer. Don’t let the chaos define you — define the role instead.

🔭 What’s Next: Exploring Engineering Roles by Level

This post focused on how a Software Engineer evolves as company size changes — but there’s another critical dimension to explore: career level.

Whether it’s Junior, Senior, Tech Lead, Staff, or Principal, each role comes with its own set of expectations, value, and (sometimes fuzzy) responsibilities. Some are essential stepping stones. Others might just be elaborate ways of saying "you’re still doing the same thing, but with more meetings."

In future posts, I’ll break down:

  • Which titles actually matter and why
  • Signs a role might be title inflation vs. truly scoped for impact
  • What to watch for when taking on a new level
  • Countermeasures for surviving vague roles or poorly defined responsibilities

Because knowing whether you’re being challenged or exploited shouldn’t be a mystery.