C++ Software Engineer
Full job description
ReQwest Limited
Salary: £72,000 – £78,000 per year
Note: This role is a mostly remote position with occasional visits to head office in London. The successful applicant will specialise in Server side development.
Ideally experience of Real Time and Embedded systems and Developing multi-threaded applications in C and C++ on Linux.
Our highly successful client is seeking a Lead Software Engineer responsible for designing, implementing and maintaining new and existing software applications that integrate with current and emerging video technologies.
Their truly independent open platform Video Management Software (VMS) enables users to achieve maximum return on investment from their security solution by unlocking its full potential.
Sitting at the very heart of a security system, the solution combines powerful ‘any source’ video, audio, data and recording management with deep integration across multiple technologies from a wide range of third-party technology providers. These include leading camera, video analytics, access control, intruder and other sensors and inputs, making it possible for users to effortlessly operate, monitor, control and manage a best-in-breed total security solution from a single screen.
The VMS is available in Base, Premium and Enterprise editions which can be supplied as software only or pre-installed on our client’s own range of Network Video Recorders and Hybrid Video Recorders. Completely scalable and future-proof, it provides users with a choice for what they need today, safe in the knowledge that it can be easily expanded and upgraded in the future. Compatible with thousands of devices and fully ONVIF Profile-S conformant, the solutions can satisfy the clear majority of applications as standard but can also quickly and cost effectively integrate specialist and bespoke devices cost-effectively and quickly using its in-house integration service.
The role
As C++ Software Engineer, you’ll be an important part of a highly skilled and innovative development team responsible for designing, implementing and maintaining new and existing software applications that integrate with current and emerging video technologies.
Our Video Management Software (VMS) platform is at the cutting edge of technology, used predominantly for integrated security solutions but increasingly being deployed across business intelligence and other exciting new applications.
With experience in agile and test driven development, you’ll be comfortable in planning and prioritising projects in dynamic environments both undertaking development work yourself as well as managing the workload of others as the company grows (internal and agency). Making the complex simple is at the core of our business and you’ll be instrumental in ensuring the company can maintain its leading position in a world where ever-increasing integration across disparate devices needs to be managed effectively with emerging technologies, such video analytics and the Internet of Things (IoT), becoming increasingly important.
You’ll be able to use your ideas and skills to shape the direction of our product with supportive colleagues.
Key responsibilities:
- Achieving specific agreed KPIs
- Conducting staff appraisals in line with company policy and schedule
- Input into the strategic development plan
- Scoping, planning and prioritisation of key projects
- Ownership of delivering key features and projects to the strategic plan
- Bug fixes using priorities set out in the bug tracking system
- Managing strategic development alongside day-to-day requirements
- Ensure that the code is well documented, both within the code in the form of comments, and outside the code to document the product’s behaviour and usage
- Commit code changes to the source control system ensuring that commits are well formed and well documented
- Write unit tests and integration tests for any new functionality
- Monitor the continuous integration system to ensure the full product build is working well
- Adhering to company policy
- Working to, and promoting, the core values of the company
The person
- The ideal candidate will be an excellent communicator with enthusiasm to work in a complex software development environment. Working in a small to medium sized team, the candidate will be encouraged to participate in design discussions, requiring creativity as well as empathy when opinions differ.
- Given the dynamic nature of the industry, a desire and enthusiasm to learn and work with new technologies is important.
- The ideal candidate will have experience of:
- Developing multi-threaded applications in C and C++ on Linux.
- Experience of Real Time and Embedded systems
- Test driven development
Additionally, a degree (or equivalent) in an IT related subject would be beneficial, as would experience of the following:
- git or similar DVCS
- Continuous Integration systems
- Scripting tools such as bash, Perl and Python
- Video standards and transport protocols (such as RTSP and ONVIF)
- Object-oriented design principles.
To apply for this job please visit definitejobs.co.uk.