Role Open Date: 31st August 2020
Closing Application Date: 27th September 2020
More than £100Bn worth of components are produced using CNC Machines every year, but today the process is slow, costly and heavily reliant on human input. We are developing technology that fully automates CNC manufacturing, hugely reducing the cost of parts while boosting quality and speed of delivery.
By developing autonomous, flexible factories with this technology at their core, CloudNC is working to make the dream of fully automatic manufacture a reality.
What to expect?
Having achieved getting our world-first through software-enabled automation of our factory machines into production, we’re now focused on expanding our part reach and capability for autonomous machining and the challenge of automating the entire factory.
At the heart of this challenge is the mastery and development of our autonomous machining technology and it’s integration with our factory operating system, which is responsible for the scheduling and distribution of every factory application, process and task, that codifies the factory blueprint and its operating model.
The engine team
In the Engine team we develop the core technology that generates machining instructions from the part geometry, the corresponding technical drawing and parameters of the target machine.
Our software, written using modern, high-performance C++, analyses the part geometry using a toolbox of robust geometrical data structures and algorithms, before generating an optimal machining strategy using physics-based optimisation heuristics and complex algorithms to incorporate real-world machining constraints.
Unlike other state-of-the-art technologies, our software guarantees the generation of optimised, collision-free toolpaths with minimal user interaction.
The architecture of our software has been designed to separate the mathematical and machining domain specific complexities from more general problems like work distribution, persistence of the state, reproducibility and consistency.
Our software is a cloud-based server-side application, accessible from the Front End through gRPC message passing API. We maintain an extensive set of tests including fine grained unit tests and high-level end-to-end tests.
Our tech stack
C++ 17, Boost, CUDA, WebGL
Java 11, Python, Guice, AWS, Docker, Kubernetes, Terraform
Angular 10, Typescript, WebGL, Ngrx
You will be working with cross-functional teams that value getting great features in front of users. We measure our success in this way, and by producing working features in a production environment. We believe all our software should be responsive, scalable, and resilient to failure. Our pursuit of these qualities means that we employ modern software tools and practices and constantly look for ways to improve our process and our products. As a result: we are pragmatic and always try to "use the right tool for the job"; we practice shared code ownership through collaboration and reviews; we pair program on difficult problems and test just about everything; we adapt our software and our structure to cope with new problems but still make sure we give ideas a chance to mature; we want everyone to feel comfortable offering suggestions at any level and we trust and empower our people to deliver.
We are nothing but our employees, and as such so you’ll be supported with excellent salary, stock options, hardware including high-performance computers, top of the range private healthcare, company expense card, Bose headphones plus 28 days holiday (& bank holidays). We also have hack days every month with lunch provided and team socials.
We encourage continuous personal development at CloudNC and support you with a flexible learning and development programme and conference tickets. Furthermore, you can’t fail to learn and develop in a scaling company that has been featured in the RocketList 2019 'Best Fast-Growing Companies'.
You are an experienced C++ Software Engineer (at least version 11) with a track record of working on computational problems (we're regularly solving NP hard problems). You will have great knowledge of computer architecture and a passion for improving the quality of code. You'll be familiar with Git and have experience in CI/CD environments.
Working in this environment will require you to have demonstrable experience in a heavy compute environment and come from any discipline requiring either mathematical, physics, geometric or computational skills that enables you to explore, analyse and develop practical solutions to our wide spectrum of computational challenges.
You will develop novel algorithms and features to solve real problems in machining and heavy-engineering. You’ll be excited at the prospect of being immersed in both the old-school and the cutting-edge of the manufacturing world.
You will be a key member of our engineering team, comfortable working cross-functionally with other software engineers, data scientists, business analysts, product managers and crucially factory-based SMEs. You will in our AMT team (autonomous machining technology) and with our factory operating (FOS) development teams against roadmap plans as part of the technology strategy. As a software engineer at CloudNC you will have proven experience within C++ and interested in wider technology.
We are proud to be an equal opportunity employer, valuing individuality and embracing all people. The success of CloudNC is a result of diversity of thought. We recognise this comes from people truly belonging. We encourage different perspectives and skills to collaborate towards our mission – disrupting the manufacturing industry. We celebrate diversity and continually improve our diversity efforts.
Software Engineer, IntruderLondon
Software Engineer, IntruderLondon
Software Engineer, LearnerblyLondon, UK
Senior Software EngineerLondon Full Time Employment
Software Engineer, BedfulLondon, UK