Our client is seeking a Software Developer to join their dynamic team. The successful incumbent will develop and maintain software systems of a high level of complexity using modern tools, best practices and quality processes as defined by the Software Department
Please email application through to melanie@armstrongappointments.com
Main job function
Develops systems and components of a high-level of complexity.
Programming
Creates new software systems
Maintains existing software systems: fixes defects in existing code; maintains existing code; adds new functionality to existing systems
Troubleshoots, debugs, analyses problems and default reports to find the underlying cause of the problem
Follows the company’s Software Development Processes
Works with the Technical Business Analyst and other stakeholders to build software prototypes for new concepts
Implements Projects and Tasks by writing code that fully meets the requirements of the associated Functional and Technical Specifications
Writes code that is clear, concise, and easy to maintain, according to the prescribed Software Coding Standards
Testing
Works with the Software Testers to write unit test definitions that provide for good coverage of the System Under Test
Writes unit tests that verify the functionality of the System Under Test
Ensures that all implemented code that is released to the QA and Live environments is of a high quality with as few defects present as possible
Corrects defects as reported by Software Testers in the appropriate Defect Management System and allocates the task back to the Software Tester for confirmation
Collaboration
Collaborates with Team members, UX Designers, Business Analysts and Product Specialists to help in the development of new projects and large features by offering input from a system and product level
Constantly looks for risks on any Project and Task and raises these risks to the appropriate manager. Risks include schedule, financial, technical, obsolescence, performance, resources, people, relationships, processes, etc.
Performs pair programming and helps other team members when they get stuck on a tricky problem and need a fresh pair of eyes
Is available to give advice to technical questions asked by other team members
Helps team members solve complex problems and derive innovative solutions
Process Optimization
Continually evaluates the existing software development processes and tools and offers suggestions on ways to improve these processes
Participates in Post-mortem project meetings and offers input on lessons learnt, both positive and negative
Documentation
Creates technical specifications for APIs.
Creates documentation of architecture and high-level designs that are difficult to capture in the source code
Qualifications
Minimum Degree in Computer Science/Software Engineering/Information Technology or equivalent
Experience/Criteria
Minimum 3-5 years’ experience
Remote working conditions
Proven track record of understanding and knowledge of the full stack of major and modern programming/coding languages
Experience with Node.JS, React and React Native or related JavaScript technologies
Experience with Linux, Docker, Kubernetes and Cloud technologies is advantageous
Experience with high-volume web-based applications is preferable
Experience working in an Agile, SCRUM environment
Experience working in an E-commerce environment
A Consultant will be in touch if you are shortlisted for the position. Please consider your application unsuccessful should you not have been contacted within 2 weeks. We will keep your CV on our database and contact you should you match the criteria of any other vacancies.