The overall responsibility of the C++ / Qt Software Engineer is to design, develop and maintain software applications, working as part of the Global R&D organisation on products targeted towards the Onshore, Offshore and Transportation markets.
Key Responsibilities
* Design, implement and maintain features across the control system platform in C++ on Linux, balancing functionality, performance, reliability and long-term maintainability.
* Develop and evolve the operator-facing GUI (Qt) and contribute to the wider client/server architecture, audio routing and system integration layers.
* Work within a safety-conscious development lifecycle producing the design, traceability and verification evidence that goes with it.
* Take part in design and code reviews, uphold coding standards and help mentor and develop less experienced Engineers.
* Integrate the control system with the wider ecosystem of the organisation - audio routing, SIP/RTP voice path and multicast audio distribution over IP network technology
* Diagnose and resolve complex defects across the software, network and integration boundaries, including on live and customer-acceptance environments.
* Engage with Project, Product, QA and customer stakeholders to deliver against milestones and acceptance criteria.
Skills and Experience Required
Essential:
* Strong, demonstrable experience in C++ (C++14 / C++17 or later) with solid object-oriented design skills.
* Proven experience developing and testing GUIs and applications using the Qt5 framework in an IDE (VSCode or QtCreator).
* A sound grasp of software architecture, concurrency and writing testable, reliable code.
* Good working knowledge of Linux as a development and target platform.
* Experience with Git for version control in a collaborative team environment.
* Familiarity with XML for configuration and data interchange.
* Experience working in an Agile / Scrum environment.
* Comfortable with Bash scripting for development and build tasks.
* Familiarity with collaboration tools such as Jira, Confluence, Teams and Slack.
* Strong problem-solving skills across software, networking and system integration.
* Good written and verbal communication skills and the ability to work effectively with both engineering and non-engineering stakeholders.
Desirable:
* Experience with Ubuntu / Debian Linux systems.
* Familiarity with GitLab, including CI/CD pipelines.
* Knowledge of VoIP / telephony technologies: Asterisk, SIP, PCM.
* Experience with network analysis tools such as Wireshark.
* Knowledge of PostgreSQL or other relational databases.
* Experience with containerisation and virtualisation: Docker, VirtualBox.
* Python scripting ability.
* Familiarity with test-driven development (TDD) practices.
* Knowledge of XMPP or ONVIF protocols.
* Web development experience (e.g. React, Rust, Go).
Personal Attributes
* Takes ownership and follows problems through to a robust resolution.
* Collaborative and willing to share knowledge and raise the standard of those around them Only candidates based in UK and eligible to work in UK are allowed
All Job Ads are subject to GrabJobs’s Terms of Service. We allow users to flag postings that may be in violation of those terms. Job Ads may also be flagged by GrabJobs moderation team. However, no moderation system is perfect, and flagging a posting does not ensure that it will be removed.
Be the first to receive the latest Others Full-Time Jobs in the UK.
Setup your job alert:
By activating job alerts, I agree to GrabJobs Terms & Privacy Policy. I can unsubscribe to job alerts anytime.
Skip
GrabJobs is the no1 job portal in the UK, connecting you to thousands of jobs fast!
Find the best jobs in the UK, apply in 1 click and get a job today!