Senior Software Engineer (C++ / Qt)

Resourcing Group Ltd
London, UK
6 days ago
Apply on www.collegerecruiter.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Working hours
Regular working hours

Tech stack

Adobe InDesign Software Applications Confluence JIRA Bash Shell VoIP C++ (Programming Language) Ubuntu (Operating System) Network Analysis Code Review Collaborative Software Relational Databases
+30 more
Debian Linux Linux Web Development Electronic Data Interchange (EDI) Internet Protocol Java GUIs PostgreSQL Multicasting Object-Oriented Software Development Scrum Methodology Software Architecture Qt (Software) Software Engineering Systems Integration Wireshark VirtualBox Virtualization Technology Extensible Markup Language (XML) Scripting ReactJS Concurrency XMPP Gitlab Git Containerization Information Technology Production Code Software Coding C++14 Docker

Job description

C++ / Qt Software Engineer 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

Requirements

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. Education & Qualifications Degree in Computer Science, Software Engineering or similar background.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.collegerecruiter.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

1:26 min

Spear phishing IT administrators with malicious VoIP spoofing

Mauro Verderosa · LIVE

3:05 min

Integrating an assistant application with Jira software

Felix Augenstein · LIVE

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

1:06 min

Developer experience and project variety at scale

Alexandra Petri · World Congress 2023

5:47 min

Integrating user stories and test automation via Jira tools

Christoph Ruggenthaler · LIVE

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

Videos

See all

Related articles

See all