Skip to content

Latest commit

 

History

History
62 lines (46 loc) · 3.48 KB

career-technical.md

File metadata and controls

62 lines (46 loc) · 3.48 KB

Engineering Career

You start as a coder, a sysadmin or a data analyst, working on small, well defined and isolated tasks. Then you immediately need to become an engineer that gets loosely defined problems/features and creates solutions for them. You need to do this because we are not a development agency and most of our work does not come from some outside specification, but from problems we and our customers discover day-to-day.

Since we are a software company, the base salary comes from the "Software Engineer" family of positions on Salary.com. But we don't differentiate between different engineering careers. In other words, a data scientist is paid the same as a frontend developer and the same as a DevOps engineer.

The top two positions are two branches of the engineering career:

  • Lead Engineer means you start taking over managerial tasks and leading people.
  • Principal Engineer means you take ownership of all of technical nitty-gritty details in the company.

Junior Engineer

  • Work is thoroughly reviewed with substantial back and forth frequently needed before merging.
  • Basic language/technology features are mastered, but some advanced approaches may still be unfamiliar.
  • Occasional issues following patterns and approaches within existing code bases.
  • Works mostly on clearly defined and scoped individual features or problems.
  • Usually less than 2 years of technical experience.
  • Salary.com role name for base salary: Software Engineer I

Engineer

  • Work doesn't necessarily need to be reviewed, but general approach may be.
  • Follows established patterns and approaches within existing code bases with ease.
  • Is able to work on problems and features that are not clearly defined. Comes up with some specifications and API designs on their own.
  • Is able to take a problem all the way from research, writing a User Story through implementation and deployment.
  • Can keep production systems online while their colleagues are on vacation.
  • Usually at least 2-5 years of engineering experience.
  • Salary.com role name for base salary: Software Engineer II

Senior Engineer

  • Work happens completely autonomously with no regular need for review.
  • Fully capable of taking substantial features from concept to shipping as the sole engineer.
  • Can provide material feedback on the work of Junior Engineers.
  • Helps with hiring and onboarding.
  • Deep expertise within at least one programming environment.
  • Proficiency in at least one additional programming environment.
  • Usually at least 5-8 years of engineering experience.
  • Salary.com role name for base salary: Software Engineer III

Lead Engineer

  • Basically a Software Engineer that takes on additional managerial work.
  • Capable of running and directing whole teams for large, long-running projects.
  • Sets and maintains professional standards for the entire organization.
  • Deep, substantial expertise in multiple programming environments.
  • Usually at least 8-12 years of engineering experience.
  • Salary.com role name for base salary: Software Engineer IV

Principal Engineer

  • AKA Steve Wozniak at Apple.
  • Can poke holes into any of our projects.
  • Regularly saves our asses.
  • Fully capable of designing, owning, and running entirely new, novel systems.
  • Recognized widely in the industry for material contributions to the state of the art.
  • Invents new concepts, pushes the whole organization forward regularly.
  • Usually at least 12-15+ years of engineering experience.
  • Salary.com role name for base salary: Software Engineer V