Senior Software Engineer
Role details
Job location
Tech stack
Job description
The Senior Software Engineer will be responsible for the implementation of new features in Pharos products, which include a range of embedded lighting controllers, touch screen interfaces and accessories, and cross-platform desktop applications used by customers to commission lighting systems. The successful candidate will be expected to gain familiarity with all parts of the Pharos software suite in order to recommend approaches for automated testing to accelerate our development practices.
Pharos is a growing company with a close-knit and highly motivated team with a keen interest in the products it creates. Candidates should be similarly interested in the work involved and be able to adapt to changing priorities as we help deliver landmark projects for our customers. We offer a very friendly, flexible and supportive working environment., * Design and deliver high-quality software solutions across our product suite.
- Champion quality engineering by coaching teams on effective testing practices, including test design, mocking, isolation, and coverage.
- Assess and improve existing test suites, addressing coverage gaps, performance issues, and reliability concerns.
- Debug production and test failures, ensuring root causes are addressed and covered by future tests.
- Collaborate with Developers, QA and Product Owners to align on Definition of Done, quality gates and CI/CD pipeline improvements.
- Review code with a quality lens, identifying risk, edge cases, and maintainability concerns.
- Participate in architectural discussions, advocating for designs that improve system resilience and test coverage.
Requirements
Pharos is seeking a Senior Software Engineer with a strong focus on automated testing to help drive quality and reliability across our product suite. Working within a cross-functional Scrum team, you will use your testing mindset to influence product architecture, improve testability, and support the team in shifting quality left. You will have experience in C/C++ encompassing desktop and real-time embedded application development. Ideally, you will also have hands-on experience with lighting, audio, or video control systems in live events or installation environments.
The role will be based in the Pharos office in Cambridge but initial training on Pharos products, etc. may require the candidate to spend a few days in the Pharos offices in London, W4.
Applicants must have the right to work in the UK., * 5+ years' experience in software development, ideally using C/C++.
- Experience developing software for embedded Linux across multiple hardware platforms.
- Proficient with Git or equivalent version control systems.
- Good understanding of modern networking concepts and protocols.
- Proven ability to work effectively in collaborative, cross-functional teams.
- Able to clearly explain previous work, including design decisions and trade-offs.
- Strong verbal and written technical communication skills in English.
Desirable Extras
- A good degree in a relevant discipline, e.g. Computer Science, Engineering, Maths, etc.
- Experience in the use of lighting, audio or video control products within a live event or installation environment.
- Excellent time management, including the ability to prioritise conflicting tasks appropriately.
- Experience with the Qt application development framework.
- Knowledge of GPU shaders and compute pipelines.
- Familiarity and experience with code review tools such as Gerrit.