The ProDevs Talent Framework

Kindly note that this is a guide and not a roll call, this framework is meant to guide you as you grow within our technical space such as your expertise with specific languages, data stores and environments.

For organizations looking to ProDevs for outsourcing or recruitment, this guide will help you see the various levels of our engineers and what we expect from them through vetting their professional skills, universal competencies and technical expertise. We have thought carefully about not only bringing the best of technical talents to ProDevs but designing the growth path to support their careers.

Career Levels

Junior Engineer (Entry Level) -

Professional Growth

Able to meet expectations for preferred stack and continues to focus on learning and development.

Mid Level Engineer -

Delivery

Intermediate knowledge of core technology, with a growing understanding of data stores, systems, & adjacent technologies.

Senior Engineer -

Ownership

Expert in core tech with foundational understanding of supporting technology & systems. Able to support production environments, & learning to build for long-term maintainability & performance.

Principal Engineer -

Technical Leaderhsip

Expertise in a specific technology or set of technologies. Able to architect end-to-end solutions and make technical decisions for implementation, while understanding operational ramifications.

Engineering Level 1

Knowledge & Experience

  • Shows general understanding of core CS fundamentals.
  • Foundational understanding of single relational data store, and can effectively perform basic actions.
  • Demonstrated comfort in at least one source control system. Confident with branching and merging code.

Team Capability (Tested by ProDevs)

  • Completes well-specked tasks effectively, asking for help at the appropriate juncture to avoid becoming blocked/stuck. Eg, Delivered a new support page
  • Communicates project status clearly and effectively. Eg, Keeps Jira up to date with progress and blockers.
  • Raises meaningful questions or concerns. Eg. Voices concerns or need for clarification to their manager.
  • Takes ownership of learning. Eg. Accepts and integrates constructive feedback effectively, Objectively evaluating whether they&aposve met their goals.

Engineering Level 2

Knowledge & Experience (CV & Portfolio)

  • Capable of contributing clean code that adheres to best practices and standards, at a beginner level, in at least one language, with guidance.
  • Shows general understanding of core CS fundamentals.
  • Foundational understanding of single relational data store, and can effectively perform basic actions
  • Demonstrated comfort in at least one source control system. Confident with branching and merging code.
  • Able to understand systems diagrams, architectural designs, and methodologies relevant area of technical focus, and provide feedback on the designs of others.
  • Able to contribute to documentation, as needed, as part of code, code-delivery, onboarding, or any requested documentation maintained by the partner.
  • Knows when to ask for help when they are becoming stuck; does not go down rabbit holes. Eg. Intermediate in at least one language and one or more framework.

Team Capability (Tested by ProDevs)

  • Trusts teammates, assumes good intent in technical discussions, and is able to disagree and commit.
  • Has a self-directed learning process, seeks feedback from others to find ways to improve.
  • Makes design or quality improvements unprompted, making small improvements to leave code better than you found it.
  • Balances pragmatism and polish appropriately. Eg. Engages with Product Management on feasibility of requested features, clarifying requirements where necessary.
  • Defines and hits interim milestones. Eg. Mastering ability to break down tasks, plan, estimate, and cut scope to ship on time. Prioritizes in alignment with company goals. Seeks learning through retrospectives.

Engineering Level 3

Knowledge & Experience

  • Mid-Level in at least one language and one or more framework.
  • Capable of owning small end-to-end features in core technical competency, as well as able to complete tasks with little guidance.
  • Understanding of core design patterns with the ability to propose solutions accordingly.
  • Familiarity with at least one NoSQL database platform as well as distributed storage.
  • Familiar with distributed caching systems.

Team Capability (Tested by ProDevs)

  • Capable of setting up a local dev environment, without support, if given proper documentation.
  • Consistently stays on track with work and keeps work in line with bigger picture goals.
  • Communicates technical issues and decisions clearly and proactively.
  • Shows maturity around what code not to write and thinking before you code, demonstrating critical thinking
  • Defines and hits interim milestones. Eg. Mastering ability to break down tasks, plan, estimate, and cut scope to ship on time. Prioritizes in alignment with company goals. Seeks learning through retrospectives.
  • Identifies and suggests solutions to problems impacting team.
  • Exemplifies a &aposuser first&apos mindset.

Engineering Level 4

Knowledge & Experience

  • Has command of the capabilities of applicable languages/frameworks and understands the inherent differences between languages, frameworks, and versions, relevant to the engineer’s technical focus.
  • Working knowledge of data modeling in both SQL and NoSQL data stores.
  • Capable of optimizing queries and aware of query optimization methods.
  • Able to model and implement solutions for different deployment and continuous integration scenarios.
  • Able to architect features, following any defined team review processes.
  • Able to make design decisions that limit the impact of future changes.

Team Capability (Tested by ProDevs)

  • Translates rough ideas into clear, executable projects with discrete tasks. Eg. Finds ways to deliver requested scope faster, and prioritizes backlog. Tackles tech debt proactively.
  • Communicates with non-technical team members to give technical advice. Eg. Coordinates communication among team & stakeholders, including the right people at the right times.ndset.
  • Recognizes patterns or process that hurt the effectiveness of your team or that don’t serve your overall, longer term goals and effectively works towards resolutions. Eg. Trusted to de-escalate conflicts and build consensus between team members about technical matters.
  • Exemplifies grit and determination in the face of persistent obstacles. Eg. Helps others maintain resilience in periods of change / challenge.

Engineering Level 5

Knowledge & Experience

  • Identifies and eliminates single points of failure throughout the organization.
  • Deep knowledge of design patterns and their applications.
  • Expert level working with at least one SQL, NoSQL, or cloud-based data store.
  • Strong working knowledge of CI tools and implementations.
  • Strong working knowledge within containerized infrastructure.
  • Understands technical direction and is able to architect at a feature level.
  • Takes into account impact, performance, points of failure, and production readiness in personally developed designs as well as in feedback given to others.
  • Able to identify, prioritize, and lead in areas where technical efficiencies can be gained from automating tasks and processes; such as testing, releasing, and deploying.

Team Capability (Tested by ProDevs)

  • Consistently and accurately recognizes and communicates key risks in projects. Eg. Identifies, defines, and solves strategic problems, thinking holistically about the whole system.
  • Communicates with non-technical team members to give technical advice. Eg. Trusted to always share status with all stakeholders, and proactively remedy communication issues.
  • Manages dependencies on other projects and teams. Eg. Managed infrastructure migration to VPC.
  • Exemplifies grit/tenacity in the face of obstacles, distractions or long and challenging tasks. Eg. Help others maintain resilience in periods of change.
  • Builds leaders within their team or domain, educates across domain. Eg. Acts as a multiplier who shares knowledge and delegates to help others grow.

Engineering Level 6

Knowledge & Experience

  • Deep knowledge of design patterns and their applications.
  • Expert level working with at least one SQL, NoSQL, or cloud-based data store.
  • Expert level understanding of the technologies within the engineer’s relevant area of technical focus.
  • Capable of making technical recommendations and decisions for a given solution, with a view toward the required outcome. The engineer takes into account complementary languages/frameworks, as well as scalability, maintainability, available resources, and speed to development.
  • Expert in schema design, complex query development, and solving for optimizations at the data store level. Capable of applying caching strategies, where appropriate.

Team Capability (Tested by ProDevs)

  • Able to contribute to the design and management of large scale, secure, on-prem and cloud based software deployment environments.
  • Capable of making critical architecture and implementation decisions and maintains a vision of the overall technical direction.
  • Provides mentorship and direction to others who are providing feature and systems-based architectural design. Able to delegate in order to mentor and provide opportunities.
  • Familiar with multiple distributed architecture patterns and able to contribute architectural designs relevant to their vertical.
  • Exhibits excellent judgment regarding decisions across teams. Eg. Thoughtfully and effectively seeks wide context and builds buy-in for decisions affecting multiple stakeholders.
  • Instills and promotes a culture of learning and development within the entire engineering team. Eg. Empowers team members to develop themselves and coached others on how to become mentors too.
  • Exhibits ownership across the org - this person is a guardian of Buffer. Eg. Identifies and eliminates single points of failure throughout the organization.