The different developer roles along with the expectation from NML is presented in table format below.
✓ means that the described responsibility is expected from a person fulfilling the role and will form part of assessments.
⃞ means that the described responsibility is not expected from person fulfilling the role and will not form part of assessment.
Feedback
This document is currently open for questions and commentary. Please add your feedback to the Define roles with responsibilities/expectations for developers Trello card
Technical skills
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Display adequate proficiency in the required technology stack for your level of experience. Ensure identified gaps are added to your personal development plan. |
✓ |
✓ |
✓ |
✓ |
✓ |
Assist team members on technical implementation issues |
✓ |
✓ |
✓ |
✓ |
✓ |
Monitor technical implementation issues and take responsibility for ensuring resolutions |
⃞ |
⃞ |
⃞ |
✓ |
⃞ |
Monitor architectural issues and take responsibility for ensuring resolution |
⃞ |
⃞ |
⃞ |
⃞ |
✓ |
Ensure familiarity with the project reference architecture |
✓ |
✓ |
✓ |
✓ |
✓ |
Assist on defining a reference architecture for a project. |
⃞ |
⃞ |
⃞ |
✓ |
✓ |
Define reference architecture for a project. |
⃞ |
⃞ |
⃞ |
⃞ |
✓ |
Identify gaps in the reference architecture and work with the team to update. |
⃞ |
⃞ |
✓ |
✓ |
✓ |
Transfer technical knowledge to team members |
✓ |
✓ |
✓ |
✓ |
✓ |
Day-to-day tasks
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Ensure that tickets are up to date and you move your tickets in terms of status and comment on the ticket where relevant. |
✓ |
✓ |
✓ |
✓ |
✓ |
Take ownership of stories, tasks and all related development activities to complete the assigned work. Manage assigned story and task statuses, comments and updates from start to finish. |
✓ |
✓ |
✓ |
✓ |
✓ |
Ensure pull requests are reviews and that the changes are applied to the test environment as expected. |
✓ |
✓ |
✓ |
✓ |
✓ |
Pro-actively follow up with QA to ensure you work is complete and that all bugs have been addressed in the current cycle. |
✓ |
✓ |
✓ |
✓ |
✓ |
Transfer agile process knowledge to team members |
✓ |
✓ |
✓ |
✓ |
✓ |
Code quality
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Adhere to good technical practices which include: unit testing, integration testing, dependency injection, monitoring and logging |
✓ |
✓ |
✓ |
✓ |
✓ |
Familiar with coding practices. |
✓ |
✓ |
✓ |
✓ |
✓ |
Identify practices that aren't effective and suggest changes |
⃞ |
✓ |
✓ |
✓ |
✓ |
Ensure team members implement according to best coding practices according to the accepted standards |
⃞ |
⃞ |
⃞ |
✓ |
✓ |
Ensure team members implement according to best architectural practices |
⃞ |
⃞ |
⃞ |
⃞ |
✓ |
Review pull requests as highest priority and participate by commenting and asking clarifications. |
✓ |
✓ |
✓ |
✓ |
✓ |
Ensure team members participate on pull requests with the required urgency. |
⃞ |
⃞ |
⃞ |
✓ |
✓ |
Build and Releases
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Deploy approved changes to target environments. |
✓ |
✓ |
✓ |
✓ |
✓ |
Configure and manage builds and releases in the appropriate dev-ops platform, or document the build and release process. |
✓ |
✓ |
✓ |
✓ |
✓ |
Own the build and release configuration or process and ensure the team all understand and follow it. |
⃞ |
⃞ |
✓ |
✓ |
✓ |
Fix builds broken as a result of your pull requests |
✓ |
✓ |
✓ |
✓ |
✓ |
Communicate the release change list to PM and client. |
⃞ |
⃞ |
✓ |
✓ |
✓ |
Project solutions
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Execute development tasks in line with the Technical Lead / Architect' solution and the team's project planning activities. |
✓ |
✓ |
✓ |
✓ |
✓ |
Where required take responsibility for defining the solution for a specific feature. |
⃞ |
✓ |
✓ |
✓ |
✓ |
Where required take responsibility for defining the solution for a features or work-stream. |
⃞ |
⃞ |
⃞ |
✓ |
✓ |
Define the architectural solution for team members to implement. |
⃞ |
⃞ |
⃞ |
⃞ |
✓ |
Get approval from the technical team lead for all environment changes |
✓ |
✓ |
✓ |
✓ |
✓ |
Keep PM/CTO updated on all environment changes that can affect cost and client billing |
✓ |
✓ |
✓ |
✓ |
✓ |
Demo work to team or NML |
✓ |
✓ |
✓ |
✓ |
✓ |
Scrum ceremonies
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Contribute during sprint planning and backlog grooming meetings to define stories and the necessary tasks to address requirements. |
✓ |
✓ |
✓ |
✓ |
✓ |
Assist PM with technical leadership to define stories and the necessary tasks to address requirements in grooming and planning meetings |
⃞ |
⃞ |
⃞ |
✓ |
✓ |
Attend and prepare for daily stand-up meetings. You will need to briefly describe what you did yesterday, what you will be doing today and what impediments you are experiencing. |
✓ |
✓ |
✓ |
✓ |
✓ |
Attend and contribute to retrospective meetings. You will need to describe what went well during the last sprint, what did not go well and what you feel the team can improve on. |
✓ |
✓ |
✓ |
✓ |
✓ |
Identify technical issues and/or solutions raised during retrospective that are applicable on a company level and should be communicated to the development manager or CTO |
⃞ |
⃞ |
✓ |
✓ |
✓ |
Check-ins
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
When needed request or accept and prepare for check-ins with the Technical Team Lead, PM and/or Development Line Manager |
✓ |
✓ |
✓ |
✓ |
✓ |
Schedule regular (4-6 weeks) check-ins with all team members. |
⃞ |
⃞ |
⃞ |
✓ |
⃞ |
Reference architecture review
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Participate in reference architecture reviews |
✓ |
✓ |
✓ |
✓ |
✓ |
Schedule, plan and run reference architecture review |
⃞ |
⃞ |
⃞ |
⃞ |
✓ |
Communication
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Communicating progress and issues on development commitments to team and Project Manager. |
✓ |
✓ |
✓ |
✓ |
✓ |
Transfer communication best practice knowledge to team members |
✓ |
✓ |
✓ |
✓ |
✓ |
Ask for help in an appropriate time frame |
✓ |
✓ |
✓ |
✓ |
✓ |
Timekeeping
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Accurate daily logging of time. |
✓ |
✓ |
✓ |
✓ |
✓ |
Assisting PM in managing team time allocation versus estimates, managing change control and scope creep impacts of time on projects. |
⃞ |
⃞ |
✓ |
✓ |
✓ |
NML Wikis
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Update Project Wiki Page with relevant project documentation from features worked on. |
✓ |
✓ |
✓ |
✓ |
✓ |
Contribute articles and posts to NML blog |
✓ |
✓ |
✓ |
✓ |
✓ |
Communicating with clients
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Professional communication with clients, and PM and Technical Lead are made aware (included) in communications. |
✓ |
✓ |
✓ |
✓ |
✓ |
Have ownership of technical communications. |
⃞ |
⃞ |
⃞ |
✓ |
✓ |
Support
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Participate in the relevant project support structure. |
✓ |
✓ |
✓ |
✓ |
✓ |
Fulfill escalation role for support. |
⃞ |
⃞ |
⃞ |
✓ |
⃞ |
Skills development plan
Responsibility |
Junior Developer |
Intermediate Developer |
Senior Developer |
Technical Team Lead |
Architect |
Formulate a plan with Technical Lead and/or Architect Line Manager to address skills gaps. (Training material, Exams / Certifications, Target completion dates) |
✓ |
✓ |
✓ |
✓ |
✓ |
Assist team members with formulating plans |
⃞ |
⃞ |
⃞ |
✓ |
✓ |