We are specialists in Linux, Android and embedded RTOS. The nature of Codethink’s work requires us to tackle deep developer-level integration with other platforms too – currently that includes QNX, Integrity, Windows, Mac OS. We work on firmware, drivers, board support, operating systems, libraries, middleware, and all of the build tooling required to create complete systems. Projects range from tiny real-time devices to fleets of data-center scale Linux appliances. Philosophy and Approach We specialise in system-level software infrastructure to support advanced technical applications, working across a range of industries including finance, automotive, medical, telecoms. Typically we get involved in software architecture, design, development, integration, debugging and improvement on the deep plumbing of code. We aim to be great at software design and development, and to improve the practice of software engineering as a real engineering discipline. We have learned that we can only achieve this by sharing what we know, and absorbing what others can teach us.

Codethink

Manchester, GB

C++ Expert

Codethink is currently recruiting several Software Engineers. As a C++ expert, you will be expected to contribute proactively to our customer and internal projects, as well as having the flexibility to take on any role within the delivery lifecycle of a software project: from requirements capture, design and estimation to implementation, test and deployment, as well as to help other software engineers to develop their C++ capabilities.

Key responsibilities include:

Participate in all phases of the full software development lifecycle
Write well-designed, testable, efficient code
Produce specifications and determine operational feasibility
Integrate software components into a fully functional software system
Develop software test and verification plans and procedures
Tailor and deploy software tools, processes and metrics
Follow project plans and industry standards

What are we looking for:

Someone who is passionate about C++, developing in C++, and developing the C++ language an ecosystem
A good communicator, both verbally and in writing
A problem solver - we adapt and change to meet our client needs. We encourage and expect you to create new processes, make suggestions and build improvements with us
Good organisational and time management skills
A self starter - your role may have different demands from week to week
Proactive attitude to learning and keen to grow skills
An ideal candidate will have experience in some or all of the following:

Must have a history of successful projects written in C++ and have an understanding of how C++ is developing as a language and software ecosystem
All applicants should be/become comfortable using a Linux desktop and working with free and open source software (FOSS)
Must be able to demonstrate intellect and intelligence, via academic achievement and/or other means
Must be capable of dealing with pressure, uncertainty and deadlines
Must demonstrate both willingness and ability to grasp new technical concepts
Key technologies we work with: Any of Linux, C, C#, Python, Rust, Java, device drivers, embedded, Git safety and security in terms of process and systems architecture (such as STPA modelling)
May have experience of configuring CI/CD pipelines, build tools, SW deployment, embedded hardware, etc.

What can you expect from us?

Competitive salary with annual salary reviews
Personal budget of up to £2,000 per year for training and conferences
Regular performance reviews to support your continued professional development
Flexible approach to working
25 days of holiday plus the statutory bank holidays
Supportive working environment and culture
Desirable office location in Manchester City centre
Casual dress code
Company fun days and social events
Free snacks, fruit, tea and coffee
Relocation assistance if needed
Opportunities to travel and do great work for our global customers

If it sounds like Codethink could be the right fit for you, we’d really like to hear from you.