Senior Software Engineer (C++ / Qt)

Senior Software Engineer (C++ / Qt)

Full-Time 65000 Β£ / year No working from home possible
T

C++ / Qt Software Engineer

Do you have the following skills, experience and drive to succeed in this role Find out below.
Role Overview
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.
Comfortable operating in a regulated environment without losing pace or pragmatism. xiskglj
Education & Qualifications
Degree in Computer Science, Software Engineering or similar background.

T

Contact Details:

Tiger Resourcing Group Ltd Recruitment Team