Skip to content

Engineering - Contributor

Dexterity Strength Wisdom Charisma
Engineer I(<1 - 2) Broad knowledge of core CS concepts.
Focus on growing as an engineer, learning existing tools, resources and processes

Develops their productivity skills by learning source control, editors, the build system, and other tools as well as testing best practices
Capable of taking well-defined sub-tasks and completing these tasks
Developing knowledge of a single component of our architecture

Can diagnose and escalate first-tier issues
Effective in communicating status to the team
Exhibits DoubleGDP's core values, focuses on understanding and living these values

Accepts feedback graciously and learns from everything they do
Engineer II(2 - 6+) Writes correct and clean code with guidance; consistently follows stated best practices

Participates in technical design of features with guidance

Rarely makes the same mistake twice, begins to focus on attaining expertise in one or more areas (eg, Ruby / Rails / Javascript / React / Angular / Java / C / iOS / Android etc., performance -best practices, efficient use of data stores, messaging, etc)

Learns quickly and makes steady progress without the need for constant significant feedback from more senior engineers
Makes steady progress on tasks; knows when to ask for help in order to get themselves unblocked

Able to own small-to-medium features from technical design through completion;

Capable of prioritizing tasks; avoids getting caught up in unimportant details and endless "bike shedding"

Self-sufficient in at least one large area of the codebase (multiple services, all front-end code related to a main funnel flow) with a high-level understanding of other components

Capable of providing on-call support for their area including systems that they are not familiar with

Gives timely, helpful feedback to peers and managers

Communicates assumptions and gets clarification on tasks up front to minimize the need for rework

Solicits feedback from others and is eager to find ways to improve

Understands how their work fits in to the larger project and identifies problems with requirements

Senior Engineer(5 - 8+) Understands and makes well-reasoned design decisions and tradeoffs in their area; able to work in other areas of the codebase with guidance
Doesn't flail while debugging

Demonstrates knowledge of industry trends, our infrastructure and our core systems (Heroku, Google Cloud, SideKiq, AWS)

Go-to expert in one area of the codebase; understands the broad architecture of the entire system
Persistent in the face of roadblocks; dispatches them efficiently, pulling in others as necessary.

Requires minimal direction/oversight

Scopes and stages work into well-defined milestones to avoid a monolithic deliverable

Regularly delivers software on-time and is constantly working to make accurate estimates and deliver on those estimates.

Takes the initiative to fix issues before being assigned them.

Seeks empirical evidence through proof of concepts, tests and external research

Delivers complex products are well-baked and bug-free

Avoids premature optimization

Objectively evaluates tradeoffs between tools, considering implementation costs and complexity
End-to-end responsibility on projects of increasing complexity; contributes to common code.

Writes at test cases and advises on adjacent code/regression impact

Takes initiative to identify and solve important problems, coordinating with others on cross-cutting technical issuesPartners with product and analytics and drive requirements that take into account all parties' needsPossesses empathy with the user of the software they are producing and uses that empathy to guide decision-makingIdentifies problems and risks of own work and others
Communicates technical decisions through design docs, tech talks, and the wiki

Mentors junior engineers via pairing, design review, and code review.

Contributes frequently to Drinks and Demos

Makes others better through code reviews, thorough documentation, technical guidance, and mentoring or serving as a Tech Lead on a project

Communicates effectively cross functions; is able to work well with Product, Design, Analytics, etc, as necessary

Proactively identifies problems with requirements (lack of clarity, inconsistencies, technical limitations) for their own work and adjacent work, and communicates these issues earto help course-correct
Staff Engineer Sought out for technical guidance; anticipates technical issues at the product level and makes architectural and design decisions to avoid them

Owner of and expert on large sections of our codebase

A record of creating sweeping improvements in stability, performance, and scalability across major business-critical systems

Provides technical advice and weighs in on technical decisions that impact other teams or the company at large;

Researches and proposes new technologies

Has a excellent understanding of web technologies and various components of our architecture

Can write frontend and backend automation without guidance.
Recognized as a prolific contributor to core and side projects

Consistently able to reduce the complexity of projects, services, and processes in order to get more done with less work

Shapes Understands broad architecture; ships multiple large services, complex libraries or major pieces of infrastructure

Has made an obvious positive impact on the entire company's technical trajectory

Sets direction at the project/service level and consistently influences decision-makingIdenitifies and proactively tackles technical debt before it grows into debt that requires significant up-front work to resolve
Multiplies the effectiveness of others by facilitating cross-team work

Listens and guides debates to help reach a consensus; once a decision is made, clearly communicates and backs that decision

Sets short to medium-term strategic technical direction; able to look ahead 6-12 months and identify the areas of greatest need and create plans to improve them

Sits on the Architectural Review Board, provides feedback on projects outside of their core area

Understands the tradeoffs between technical, analytical and product needs and leads to solutions that take all of these needs into account

Identifies and proposes strategies around technical problems affecting their team; communicates standards and gets buy-in on solutions
Senior Staff Engineer Anticipates broad technical change and ensures DoubleGDP is always ahead of the curve

Able to recognize and make trade-offs with respect to the whole system

Understands deeply the entire architecure for a major part of our business and is able to articulate clearly the scaling and reliability limits of that area

Consistently delivers large systems involving one or more teams' contribution on time at a high level of quality

Implements provisioning tools

Adheres to change management process

Quickly breaks down complex problems into potention solutions, knowns, and unknowns, in order to get to solid resolutions faster

Capable of debugging the hairiest problems that the team encounters
Plays a key role in developing multi-year technology strategy for complete and critical areas of the business that encompass multiple systems and teams


Creates architecture that enables many potential futures without knowing exactly what the future will be
Primarily acts as a multiplier by building systems, authoring tools, or introducing policies or patterns that raise the level of productivity of the entire org

Communicates the awesomeness of the DoubleGDP tech community externally via talks and blog posts.

Identifies areas that DoubleGDP can share effectively with the outside world and guides the creation of content and communication around these areas

Leads the conversations internally about the direction of major areas of the technology, drives wide-team consensus to the adoption of this direction, and uses this direction to inspire engineers

Seen as a role model and mentor to every technical member of the team
Principle Engineer/Chief Architect Setting Technical Direction Puts the S in GSD DoubleGDP Communicates multi-year technical strategy and leads the team in identifying futher strategic areas for development
Key Dexterity

Technical skill

Get stuff done: grit, follow-through, shipping code


Communication & Leadership