Lead Developer
Glossary
Within this we refer to Chapters and Teams. To understand the difference between these please review teams.
Mission
To define systems to meet the needs of specific client projects and lead development teams to implement those systems.
To build effective project delivery teams, deliver projects on time and to budget and develop strong client relationships.
To promote working to our standards and identify opportunities to improve those standards. To demonstrate the value of technical excellence and promote a collaborative approach to work. To ensure you continue your own development.
To be a project’s technical authority and ensure that the solution/technical roles work in a consistent way, and that the project is technically coherent and meets the desired technical standards.
Supporting and controlling developers in their implementation of the technical architecture.
Project responsibilities
As the technical lead within your team you are expected to be responsible for the following...
- Determining the technical environments.
- Advising on and co-ordinating each team’s technical activities.
- Identifying and owning architectural and other technically-based risks.
- Advising on the achievability of non-functional requirements.
- Working with your teams Designer to evaluate the technical options, and decide on the best way to turn high-level business requirements into a technical solution.
- Advising on and co-ordinating each team’s approach to estimating, to reflect technical best practice and current technical understanding.
- Promoting appropriate standards of technical best practice.
- Controlling the technical configuration of the solution.
- Approving the solution as technically fit for purpose prior to deployment.
- Managing technical aspects of the transition of the solution into live use.
- Empowering the technical roles within the Solution Development Team to appropriate levels within their responsibilities.
- Acting as the final arbiter of technical differences between Solution Development Team members.
- Overseeing the implementation of both the frontend and backend solutions.
Competencies
- Leadership - You act as a role model other developers, living by best practice and pointing out when others do not meet your high standards. You communicate your project implementation vision to the development team and anticipate and respond proactively to changes to that vision.
- Decisiveness - you make well-informed, effective, and timely decisions, sometimes with incomplete data based on good judgement. You perceive the impact and implications of decisions against the bigger picture of both project and the technical team and its standards.
- Self-organising - you take responsibility for your own schedule and workload. You know what’s expected of you each week and can confidently discuss competing priorities on your time.
- Teamwork - you achieve your goals working with your colleagues and clients - you avoid being the hero and you’re never a team of one. You understand the reasons for our baseline standards and you stick to them.
- Integrity - you set clear commitments and expectations and you do what it takes to meet those commitments.
- Resilience and tenacity - you handle the difficult situations. When faced with a challenge, you step up to solve it and do not wait for others to work it out for you.
- Sensitivity to others - you are polite and considerate to client and colleagues and understand that we’re all working toward the same goal.
- Strong opinions, lightly held - you speak up, but you’ll listen to critique with open ears.
Impact Outcomes
-
You define the high level architecture of solutions to meet client needs and the broad plan to implement them
a. You provide high level architecture plans during the Foundations phase of a project specifying which technologies will be used and how they connect together
b. You provide broad plans for the technical delivery of the project, identifying the main themes, their approximate sizes, levels of risk and the order they will be delivered in
c. You manage the client’s expectations about the process of a fluid scope delivery and what they should be expecting to see delivered at the end of each sprint
-
You lead the delivery of high quality software solutions on time and to budget
a. You ensure your project team members are fully engaged and participating in all aspects of the project and its administration during evolutionary development
b. You ensure all ceremonies of your project are undertaken at the right time with the right people always present, including: standups, backlog refinement, sprint planning, code reviews and retrospectives
c. You ensure your team delivers the work they have committed to for the agreed deadline
d. You ensure your team is delivering work to meet or exceed the client expectations of quality
e. You ensure your team is delivering work that meets the chapters expectations of quality and that adhere to our standards
f. You ensure your team is collaborating well at all times, problems are discussed early and raised to the project manager and client as necessary
-
You support the growth of the chapter and promote the value of quality software engineering internally and externally
a. You show passion for keeping on top of current tools, standards and trends
b. You actively contribute ideas for the chapters growth
c. You own and ensure the timely delivery of quarterly goals you are assigned to
d. You produce relevant content related to software development to raise the profile of the chapter
-
You log a minimum 30 hours of valuable, billable work to client projects each week
a. You look forward in the Asana schedule to ensure your planned work is correct and allows you to meet this goal
b. You alert your Line Manager in advance if you are unable to meet this target
c. You prioritise client work up to this target before engaging in other discretionary activities
d. You log all work done accurately in Everhour with an appropriate comment
-
Your team achieves a high level of client satisfaction
a. You manage client expectations so we avoid any unexpected client issues.
b. You build rapport with clients and make efforts to build strong working relationships.
c. You challenge the client’s preconceptions and assumptions so that we are adding value through our work.
d. You hold yourself and your teams accountable to a high quality level.
e. You deliver to agreed deadlines and budgets.