Senior Software Developer Level 2

Role Purpose:

Provide technical leadership, including across product; 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 and commercial awareness.

Required skills and Experience:

  • Relevant technical skill
  • Appropriate problem solving skills
  • In-depth knowledge and understanding of software development methodologies and best practices
  • Effective prioritization
  • 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
  • Coaching and guidance skills
  • Understanding of code design patterns and appropriate application of these patterns.
  • Ability to understand complex systems and code.
  • Business and commercial understanding.
  • Track record of effective troubleshooting
  • Relevant qualification

Responsibilities:

Commercial Awareness

  • Detailed understanding of relavent customers business functions and the role your products play in realising business value.
  • Participate in and interpret market and competitor research, from a technical perspective.

Developed and maintained software

  • Acquire and maintain in-depth knowledge of your product and 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 across product, where required.
  • Assist and guide team members with their requirement analysis and design across product, where required.
  • 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 mitigating complexity, scope, and risk across projects and products.

Growth of people 

  • Agrees coaching strategy with team leadership and play an active role in the coaching, be this technical coaching or mentorship.
  • Takes advantage of opportunities to provide technical help with the view to upskill other team members.

Knowledge sharing

  • Proactively shares commercial and product insights across teams
  • Proactively shares knowledge within the team and with key stakeholders
  • Proactively shares operational environment knowledge
  • Readily shares knowledge when tasked or approached.

Safeguarding Architecture 

  • Consult in technical leadership capacity outside of product area.
  • 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.
  • Solid understanding of the business drivers for the team and interdependent products, aligning with the company’s architectural direction.
  • Works with other senior developers and architects to create and maintain the architectural vision for the team’s products, aligning with the company’s architectural direction.

Software Quality 

  • Actively drives the improvement of the team’s quality standards and processes in keeping abreast of industry and emerging technologies.
  • 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 amount of urgency, while quickly identifying the problem scope
  • Provides support to dependant teams.
Upload your CV/resume or any other relevant file. Max. file size: 20 MB.