|Developer Growth Framework|
|By Tamara Buckland (@LadyGalaxyNZ)|
|Development of high quality production features and supporting infrastructure. Leveraging empathy for clients/customers/community to understand their problem or opportunity, and using that knowledge to create appropriate solutions.||Delivering quality projects on time and demonstrating best practice for managing their work. Communicating effectively about project work with people at all levels.||Building and promoting the culture of your company. Representing the company externally and building the wider community. Developing the team by sharing knowledge and skills.||Developing leadership skills to help others succeed, advocating for team members, supporting well-being, and actively contributing to a safe and effective work environment. Proactively contributing to the growth of the organisation.|
|Junior Developer||• You have a reasonable understanding of core development concepts and you're focused on expanding that understanding and growing as an developer.|
• You have a basic understanding of your team's and company's tools and processes and a broad introduction to development best practice and productivity skills.
• You are aware of and want to learn more about code-adjacent topics like testing, source control and agile planning.
|• You are capable of taking small well-scoped components of larger projects and features. |
• With the mentoring and assistance of more senior team members, you'll complete these tasks in a reasonable time frame and keep a sustainable pace.
• You are comfortable asking for help from others and regularly do so.
• You identify obstacles and alongside more senior team members, you take a positive and persistent approach to overcoming it.
|• You are learning how to communicate effectively in activities such as stand ups, clients meetings and demonstrations, retrospectives and sprint planning.|
• Able or learning to deliver feedback constructively to peers and your manager.
• You'll support new team members, connecting them to the right resources and share your knowledge freely with others.
• You actively think about the company's values and culture and how you can contribute to it.
|• You respect and participate in processes and give meaningful feedback to help the company improve.|
• You can help identify your team mates' strengths and weaknesses. You'll participate in using available tools and processes which help ensure colleagues are healthy and happy.
• You help your team identify blockers and steps for their resolution.
• You are learning to navigate your team's emotions and reactions with kindness and compassion.
|• You have a solid understanding of core development concepts.|
• You're focused on growing as a developer, contributing to the team's tools and current processes, and developing productivity skills.
• You have a strong background in development best-practices like testing, source control, and agile planning.
|• You effectively deliver small stories or tasks within projects on their own/with little assistance, but still know when to ask for help.|
• You communicate with your wider team appropriately, focusing on efficiency and quality conversations.
• You'll improve the robustness and reliability of the codebase, and devote time to polishing products and systems.
• You show grit and determination in the face of obstacles and see them as an opportunity to grow/learn.
|• You'll mentor junior team members in technical matters, and guide people to realisations rather than providing the answer.|
• You participate in interview processes, help the team make meaningful, diverse hiring decisions.
• You step up, build connectedness, and take concrete actions to promote an inclusive culture.
|• You formally support and advocate for junior team members, helping them solve technical and project-based problems.|
• You will spot opportunities to improve existing processes, and suggest changes that positively affect the immediate team.
• You help to create a positive, supportive, engaging team environment.
• You are confident in working alongside others and supporting their emotions and reactions with kindness and compassion.
|Senior Developer||• You are able to design major new features and demonstrate an understanding of development and platform constraints.|
• You own technical design for projects of moderate complexity, and hold a depth of knowledge in systems that enable you to debug those systems effectively.
• You are aware of industry best practices and trends and have at least one major skill outside of core coding, such as monitoring, documentation, integration testing, visual design, or performance optimization.
|• You help to drive and deliver projects alongside your team.|
• You'll proactively share information, ask for feedback, and facilitate communication for multiple stakeholders.
• You're always helping to improve others' ability to deliver their own great quality work.
• You set the tone for projects by taking a leadership role, setting the pace, and facilitating team processeses.
• You role model grit and determination and a positive outlook to solve issues and obstacles and help junior team members grow this outlook too
|• You teach small groups of developers and contribute to your company's shared knowledge base.|
• You work hard to positively influence the reputation of your company in the wider tech community, helping bring in great candidates for hire.
• You contribute to improving team collaboration, and build a culture of knowledge sharing and growth mindset.
|• You inspire a small group of people, actively pushing them to stretch themselves.|
• You develop processes and tools to solve ongoing organisational problems.
• You'll advocate for and publically promote positive mental health conversations and support the overall wellbeing of team members.
• You'll assist managers to address performance issues within the team and are able to have courageous conversations with others regarding their performance.
• You role model kindness and compassion in your dealing with others' emotions and reactions in multiple situations.
|Lead Developer||• You have a strong technical background and will spend some of your time researching new technologies and staying on top of trends in the tech industry, and be able to pitch new ideas to senior management to implement change.|
• You will be able to contribute to the architecture and design efforts by serving as the technically-savvy voice that asks business and product questions of the developers on their teams.
• You'll ensure that the code we are writing matches the product and business needs and can scale appropriately as those needs grow.
|• You effectively lead and deliver projects with significant stakeholder interaction and complexity.|
• You'll be able to communicate complex ideas skillfully and establish alignment within the wider organization.
• You'll advocate for and model great quality with proactive actions, and tackle difficult and subtle system issues.
• You will effect change that has a substantial positive impact on the development teams or the product.
• You role model, at a company level, a positive attitude toward problem solving and actively demonstrate how obstacles can turn into opportunities
|• You encourage and assist people to mentor each other.|
• You'll help position your company as a great and innovative workplace to the whole industry.
• You actively contribute to or lead hiring decisions, and take an active role in sourcing great candidates.
• You recognise strengths in others and are able to support them to share their knowledge either within the company or on a national or global scale.
|• You manage interactions and processes between groups at a company level, promoting best practices and setting a positive example.|
• You'll think deeply about organisational issues and identify hidden dynamics that contribute to them.
• You actively advocate for the needs of teams and individuals, and proactively work to grow the organization.
• You'll take a lead alongside management in mediating escalated situations, empower underperforming teams, and resolve conflicts.
• You advocate and mentor others in how to navigate others' emotions and reactions with kindness and compassion. .