| Level 1 Engineer | General knowledge of core CS concepts. | Develops their productivity skills by learning source control, editors, the build system, and other tools as well as best practices for testing | Exhibits Vokal's core values, focuses on understanding and living these values | Developing a working knowledge of how project teams, the Engineering team, and the business operate | 
|  | Focus on growing as an engineer, by learning existing tools, resources and processes | Capable of completing well-defined stories/tasks | Effective in communicating current status to project teams | Works to effectively track and bill both client and internal time properly | 
|  |  | Leverages existing tools and process to reduce code waste and rework | Accepts feedback graciously and learns from everything they do |  | 
|  |  |  |  |  | 
| Role | Technical Skills | Efficiency & Productivity | Communication & Leadership | Business Impact | 
| Level 2 Engineer (2+ years professional experience) | Writes correct and clean code with guidance. Consistently follows stated best practices. Rarely makes the same mistake twice. | Makes steady progress on stories; knows when to ask for help in order to get themselves unblocked | Gives timely, helpful feedback to peers and managers | Works to identify, suggest, and improve internal tooling, modules, components, projects, etc. | 
|  | Participates in frequent code reviews providing helpful feedback | Able to own small-to-medium features from technical design through completion and QA signoff | Communicates assumptions and gets clarification on tasks up front to minimize the need for rework | Collaborates closely with other engineering discipline teams within a project to ensure alignment and expectations across technology | 
|  | Begins to focus on attaining expertise in one or more areas (eg, Javascript/Swift/HTTP/etc, automated testing, performance best practices, debugging techniques, etc). | Capable of assisting in prioritization of stories. Avoids getting caught up in unimportant details and endless "bikeshedding." | Solicits feedback from others and is eager to find ways to improve | Directly associates unit tests with user stories and success criteria to show that project and feature requirements are met | 
|  | Learns quickly and makes steady progress without the need for constant significant feedback from more senior engineers. | Tests their changes rigorously and hits a high code coverage percentage before sending anything over to QA | Understands how their work fits in to the larger project and identifies problems with requirements |  | 
|  |  |  |  |  | 
| Role | Technical Skills | Efficiency & Productivity | Communication & Leadership | Business Impact | 
| Level 3 Engineer (5+ years professional experience) | Comfortable making open source contributions. | Reliably moves through stories with a constant stride | Clearly and consistently communicates with project members about current status and identifies possible roadblocks | Coordinates with discipline leads in other departments to identify areas of improvement as it relates to product development | 
|  | Frequent contributor to internal coding standards and authors Labs when necessary | Begins handling larger feature design work, as well as early estimation | Can take the lead on technical requirements gathering | Able to work with Solution Architecture team to outline solutions to technical problems by making appropriate assumptions during the sales process | 
|  | Shows a clear path towards mastery of a particular area of expertise (eg, Javascript/Swift/HTTP/etc, automated testing, graphics programming, etc) | Exhibits leadership in some areas of the project development process | Approaches and solves challenges with passion and enthusiasm | Able to teach and educate others within the same discipline on core technologies to Vokal product development | 
|  | Takes lead in code reviews and provides in-depth feedback | Shows initiative setting primary and sometimes secondary goals for themselves | Capable of serving as a Technical Lead for smaller projects | Produces code that is able to be reused or added to internal Vokal projects for future efficiencies | 
|  |  |  |  |  | 
| Role | Technical Skills | Efficiency & Productivity | Communication & Leadership | Business Impact | 
| Level 1 Senior Engineer (4+ years professional experience) | Understands and makes well-reasoned design decisions and trade-offs in their area. Able to work largely without guidance. | Persistent in the face of roadblocks. Dispatches them efficiently, pulling in others as necessary. Requires minimal direction/oversight. | Communicates technical decisions through design docs, tech talks, and the Vokal Engineering site | Actively participates in recruitment in some manner (outreach, early stage interviews, community participation, etc) | 
|  | Doesn't flail while debugging. | Takes the initiative to fix issues before being assigned them. Seeks empirical evidence through proof of concepts, tests and external research. | Mentors more junior engineers via code review and pairing. Contributes frequently to Lunch and Learns or Vokal Bytes | Capable of articulating technology topics to clients to get buy-in, ease concerns, and/or limit scope | 
|  | Demonstrates knowledge of industry trends, our infrastructure and our build systems, including Drone/Travis, and git. | Delivers complex products to QA that they believe are well-baked and bug-free | Communicates effectively across functions; is able to work well with Product, Design, Data & Insights, etc, as necessary | Aware of technology trends, and can produce proof of concept examples to establish Vokal's expertise | 
|  | Owns final say during code reviews | Comfortable splitting attention between primary goals and supplementary ones without stress or distraction | Proactively identifies problems with requirements (lack of clarity, inconsistencies, technical limitations) for their own work and adjacent work, and communicates these issues early to help course-correct |  | 
|  |  |  |  |  | 
| Role | Technical Skills | Efficiency & Productivity | Communication & Leadership | Business Impact | 
| Level 2 Senior Engineer (6+ years professional experience) | Go-to expert in at least one area of the teams capabilities (i.e. Android graphics pipeline, Go performance profiling, etc) | Capable of assisting Product in creating well-defined milestones to avoid a monolithic deliverable. | Makes others better through code reviews, thorough documentation, technical guidance, and mentoring or serving as a Tech Lead on a project. | Has a high-level understanding of the Vokal pipeline, and can recommend new avenues in which to approach existing/prospective clients | 
|  | Provides technical advice and weighs in on technical decisions that impact other teams or the company at large. Researches and proposes new technologies. | Regularly provides honest and realistic estimates, and delivers on those estimates | Identifies and proposes strategies around technical problems affecting their team, communicates standards and gets buy-in on solutions | Provides input and suggestions on new tehcnology to leverage which will help to improve engineering team efficiency and throughput | 
|  |  | Strives for, and continually hits, the upper bounds of acceptable automated test coverage | Understands the tradeoffs between technical, analytical, business and product needs and leads to solutions that take all of these needs into account | Works closely with engineering leadership to identify, plan for, and execute on internal initiatives | 
|  |  | Routinely works on and sets primary goals, as well as supplementary ones, fluently | Frequently acts as a Technical Lead on projects of all sizes. Can speak at a high level to all aspects of the Engineering team with fluency and confidence. |  |