Senior Software Engineer
Indexed description
Role Purpose
The Senior Software Engineer designs, develops, tests, and delivers complex software solutions, with particular responsibility for high-performance, real-time, multithreaded systems. The role owns complex work from technical design through implementation and support, ensuring solutions are scalable, reliable, secure, and aligned with business objectives. It also provides technical leadership through architectural input, code and design reviews, engineering best practices, mentoring, and collaboration with cross-functional stakeholders.
Responsibilities:
- Design, implement and test high-performance real-time multi-threaded software.
- Review and provide feedback on code written by other team members, focusing on quality and adherence to standards.
- Analyse and optimise system performance, using profiling and measurement to identify and prioritise opportunities for improvement.
- Evaluate relevant technologies and recommend their adoption where they can improve product capability, quality, performance, security, or maintainability.
- Shape component and product architecture by contributing to technical designs, evaluating trade-offs, and ensuring solutions are scalable, reliable, secure, and maintainable.
- Mentor less experienced engineers and entry-level developers through technical guidance, constructive feedback, knowledge sharing, and support with complex engineering problems.
- Contribute to architectural discussions and help teams apply agreed designs consistently across scalable, high-performance systems.
- Use agentic AI development tools to improve productivity while maintaining code quality, reliability, security, and appropriate human review.
Essential:
- At least five years of experience developing high-performance, real-time, multithreaded systems using modern C++.
- Strong knowledge of low level networking concepts and protocols (e.g. TCP/IP, UDP, ICMP etc)
- Strong knowledge of higher level concepts and protocols (e.g. RTP, SIP, WebSockets, gRPC etc)
- RESTful APIs,
- Markup Languages (XML, JSON, YAML etc),
- Microservices architecture, and backend system design.
- Hands-on experience with PostgreSQL / SQL Server / MySQL
- Experience developing services/applications for Windows
- Experience working with Linux/Unix systems and services
- At least one year of commercial experience with cloud technologies, preferably AWS, together with experience developing for OKD or OpenShift environments.
- Experience using agentic AI development tools to improve engineering productivity while maintaining code quality, reliability, security, and appropriate human review; experience with GitHub Copilot or Claude Code is desirable.
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search