Senior Software Developer Level 1
Provide technical leadership to analyse, design and produce quality software and documentation by adhering to and improving the teams standards and best practices. Supports team alignment with organizational initiatives and objectives whilst safeguarding the architecture and growing product awareness.
Required skills and Experience:
- Relevant technical skill
- Appropriate problem solving skills
- Effectively prioritize
- Effective time management.
- Work under pressure.
- Software analysis and design skills
- Effective written and verbal communication skills.
- Understand Product life cycle
- Technical coaching skills
- Able to successfully collaborate
- Technical leadership
- Understand and stay abreast of software development methodologies and best practices
- Understanding of code design patterns
- Ability to understand complex code.
- Track record of effective troubleshooting.
- Relevant qualification
Developed and maintained software
- Acquire and maintain in-depth knowledge of your product and understand it’s internal and external dependencies
- Analyses requirements and creates an appropriate software design, in conjunction with other Developers, according to best practice and organizational initiatives and objectives.
- Assist and guide team members with their requirement analysis and design.
- Collaborating with senior colleagues in creating and maintaining the team’s SDLC.
- Communicates status and escalates on risks and issues appropriately and timeously.
- Comprehensively creates and maintains documentation of the software and system design and implementation, according to documentation standards.
- Creates appropriate task estimates and reviews them with the team. Supports the team in task estimation reviews.
- Develop, maintain, adhere to and oversee application of development and documentation standards, and team processes
- Develops and releases software as per the team standards and processes to meet the defined specifications or requirements within the agreed time.
- Ensures that the development or maintenance performed does not compromise the quality or functionality of the software.
- Provides technical leadership in understanding the project complexity, scope and risk for your product.
Growth of people
- Agrees technical coaching strategy with team leadership and play an active role in the coaching.
- Takes advantage of opportunities to provide technical help with the view to upskill other team members.
- Proactively shares knowledge about the operational environment.
- Proactively shares knowledge within the team and with key stakeholders.
- Readily shares knowledge when tasked or approached.
- Ensures the team’s products use appropriate technologies and stay abreast of new technologies which could be leveraged to improve the product offering.
- Good understanding of the product lifecycle, including on production environments and operational overheads.
- Seeks to understand the business drivers for the team’s products and ensures that the architectural vision and design solution align with these business drivers.
- Works with other senior developers and architects to create and maintain the architectural vision for the team’s products.
- Actively drives the improvement of the team’s quality standards and processes.
- Actively review and fix all defects found as per the defined quality standards.
- Facilitates team code reviews with the view to improve the quality of the team’s software and upskilling of other team members.
- Help others improve the quality of their work.
- Make sure your software does what it supposed to do as per the defined specification.
- Takes full ownership of quality by working with the QA team to ensure the test plans are of a high quality and cover the full scope of development.
- Test all changes you made and ensure that existing functionality works as expected.
- Test your software as per the team’s software quality charter.
Support and maintenance
- Provide effective and timely feedback on support issues.
- Provides support for product related issues in production with appropriate urgency
- Provides support to dependant teams.