We use the following criteria to assess the level and title of programmers in Black Tangent. These criteria aren't exhaustive, and they aren't mere checklists. They're guidance on having an individualized discussion about career progression.
Work is thoroughly reviewed with substantial back N forth frequently needed before merging.
Basic language features are mastered, but some advanced structures may still be unfamiliar.
Occasional issues following patterns and approaches within existing code bases.
Works primarily on tightly scoped, everyday problems.
Usually less than 2 years of experience being a professional programmer in the specific domain.
Work is reviewed with the occasional need for material direction or implementation changes.
Follows established patterns and approaches within existing code bases with ease.
Works mostly on clearly defined and scoped individual features or problems.
Usually at least 2-5 years of experience being a professional programmer in the specific domain.
Work doesn't necessarily need to be reviewed, but the general approach may be.
Fully capable of taking substantial features from concept to shipping as the sole programmer (alongside a designer).
Can provide material feedback on the work of junior programmers and programmers.
Deep expertise within at least one programming environment.
Basic proficiency in at least one additional programming environment.
Usually at least 5-8 years of experience being a professional programmer in the specific domain.
Work happens entirely autonomously with no regular need for review.
Fully capable of owning and running entire subsystems of work.
Helps set and maintain professional standards for the organization as a whole.
Deep, substantial expertise in multiple programming environments.
Capable of running and directing small teams for significant projects.
Capable of executing projects across various domains (say, native app that needs API backend).
Usually at least 8-12 years of experience being a professional programmer in the specific domain.
Your impact on the company will be significant. We are a tight-knit group, so you'll get to know everyone quickly. And people are expecting you to reach out to them. Any good or bad ideas you have that get implemented will change the organization temporarily, or maybe forever. We're excited to have you on the team and can't wait to see what you can build and how you will be a part of our growth.