Senior Software Engineer (C++) C++ development experience requirements:Proficient Modern C++ experience (minimum 11, ideally 14 and later).Experience in developing multi-threaded applications.Experience of debugging on target hardware.Experience in platform development and a good understanding of Linux.
Job Description: Design, develop and test software programs.
Analyse and contribute to system and subsystem requirements specifications and design definitions.
Complete high- and low-level detailed software design specifications, storyboards and interface specifications.
Provide support of products from conception through to product delivery including problem solving and defect maintenance.
Prepare reports, manuals, procedures and status reports.
Provide training and guidance to other team members.
Education and Qualifications: Bachelor of Science degree in computer science, electrical engineering, or related field or equivalent professional experience or combination of both.
Skills, Knowledge and Experience: Experience in Software Engineering with a proven track record of specification, design and development.
Demonstrable experience of defining test plans and test data requirements.
An effective problem solver with the ability to understand and resolve complex issues.
Experience in troubleshooting and debugging applications.
Experience of Object-Oriented Design and implementation, along with Software Design patterns.
Ability to contribute to the development of the architecture for applications.
Experience of maintaining and improving coding standards.
Experience of software best practices such as Automated Testing (Google Test), Continuous Integration, Test Driven Development, SOLID and Clean Code principles.
Scrum or Kanban experience in Agile teams.
GIT, Jenkins, Bitbucket (or similar) and Conan experience.
Experience using DOORS, Test Rail and Jira.
Experience working with test teams to optimise application performance.