Software Engineer - C++ Developer

Custom House
19 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English

Job location

Tech stack

Automation of Tests
C++
Computer Simulation
Continuous Integration
Data Structures
Machine Learning
Parallel Computing
Computational Geometry
Software Engineering
Information Technology

Job description

We are a technology-driven company working to modernize precision manufacturing. Our team builds intelligent software that speeds up the creation of CNC machining programs and supports operators in producing high-quality results more efficiently. Our main product applies advanced algorithms to streamline the most time-consuming programming steps, helping manufacturing teams increase productivity and consistency across their workflows. We are a growing engineering-led organisation with strong expertise across software development, applied mathematics, and real-world machining.

The Opportunity

We are expanding a core engineering group focused on machining strategy and automated toolpath reasoning. This role involves designing and implementing new computational methods that guide our system's decision-making for machining operations. You will work on problems such as toolpath optimization, cutting strategy selection, and the automation of complex CAM tasks. Collaboration with specialists across software engineering, manufacturing, data science, and research will be central to this work.

This position suits someone who enjoys experimental development, problem-solving, and building practical solutions from theoretical ideas. You should be comfortable exploring unfamiliar technical challenges, iterating quickly, and working closely with others to refine and improve concepts.

Requirements

  • Strong proficiency in C++, focusing on clear, efficient, and maintainable code.

  • Experience designing and implementing algorithms, ideally involving geometric or numerical computation.

  • Solid understanding of data structures, algorithmic performance, and runtime considerations.

  • Ability to collaborate effectively with a multidisciplinary engineering team.

  • Clear communication skills and the ability to explain complex technical topics.

  • Degree or equivalent background in Computer Science, Mathematics, Physics, Engineering, or a related technical discipline.

Helpful Additional Experience

  • Knowledge of computational geometry, CAD/CAM workflows, CNC machining, or manufacturing processes.

  • Familiarity with geometric modeling kernels, simulation frameworks, or CAD/CAM libraries.

  • Experience with parallel computing, GPU acceleration, or high-performance systems.

  • Exposure to continuous integration, automated testing, and modern development workflows.

  • Background in optimization, heuristic search, or machine learning-based decision systems

Apply for this position