Lead Software Engineer - Robotics
Singapore - St James Power Station Headquarters
About us
Dyson is a global technology enterprise. We solve the problems others choose to ignore, with surprising new inventions that defy convention and simply work better. We’ve been developing robot technology for over 20 years – 200 engineers, 420 patents and £28M of investments – but this is just the start of the domestic robotics revolution.
Within Upstream Robotics, Research is investigating state-of-the-art methods to solve concrete real-world problems and pave the way for Dyson’s future autonomous products. At the same time, New Product Innovation is developing Dyson’s next-generation robotic products that leverage the latest technologies.
Our world-class robotics team is highly multi-disciplinary, covering topics including Robot Perception, Reinforcement and Imitation Learning, Planning and Control, Task Intelligence, Software Architecture, Mechatronics and Platform Design within a friendly and multi-cultural work environment.
About the role
As a member of Upstream Robotics’ Software & DevOps team, you’ll design, implement, maintain and extend components of our software platform, support its users, integrate new functionality and take on the occasional proof-of-concept or exploration task. You’ll be collaborating closely with immediate team members, Upstream domain experts and Downstream colleagues. This is an opportunity to play a key role in continuously improving the architecture, practices and tooling with the goal of accelerating research and development, closing the gap to production and shortening time-to-market.
As a Lead Software engineer, you are expected to:
Have an excellent understanding of core development concepts and best practices
Work with focus, attention to detail and consideration of system-wide implications
Deliver tasks effectively to specification, on agreed time and with little assistance, but know when to seek clarifications, help or feedback
Independently scope out work and specify epics and stories based on sparse initial specifications and requirements
Demonstrate a continuous learning mindset, act on feedback and strive to improve our platform and its utility to users
Communicate with the wider team proactively, minding efficiency and quality of conversations
Mentor and support other team members in technical and ways-of-working matters and create a positive and engaging team environment
Lead technical initiatives and take on leadership duties for the team
Responsibilities:
Design, implement, test, maintain and evolve functional components and tools of our software platform
Integrate third-party components and implement new system behaviours
Port select research prototypes in Python or C++ to modern, robust C++ implementations
Help manage the entire high-level software stack, including the operating system, device drivers and user interfaces
Participate in the design of a distributed system software architecture that is scalable and deployable
Meticulously document and communicate software requirements, design and implementation
Drive a culture of software quality and collaboration that can progressively become the norm across the group
About you
Required:
Degree in engineering or equivalent industry experience
5+ years of work experience with robotic, actuated, real-time or simulated physical systems
Strong object-oriented and functional programming skills in modern C++
Working knowledge of a scripting language such as Python or Bash
Good knowledge and hands-on experience with Linux system and toolchains
Proficient use of development best practices and tools including version control, unit testing, continuous integration and continuous delivery (CI/CD)
Ability to break down problems, estimate development effort and prioritise work
Habit of exercising engineering precision
Beneficial:
Professional software development experience in a production environment
Significant contributions to open-source projects
Experience inspecting, debugging, testing and profiling complex software systems
Experience with parallel programming and performance optimisation
Experience with ONNXRuntime, TensorRT, CVflow, RKNN or deployment to NPU-based platforms
Experience with profiling and optimizing machine learning models for target hardware
Experience making real robots or autonomous systems work robustly in the field
Experience with ROS 2, DDS-based middleware systems and messaging frameworks
Experience with simulation environments such as Unity or Isaac Sim and simulation at scale in the cloud
Experience with Yocto/BitBake based build systems
Experience with containerised development and deployment
Experience with behaviour planning and decision making architectures
Benefits
Dyson Singapore monitors the market to ensure competitive salaries and bonuses. Beyond that, you’ll enjoy a transport allowance and comprehensive medical care and insurance. But financial benefits are just the start of a Dyson career. Professional growth, leadership development and new opportunities abound, driven by regular reviews and dynamic workshops. And with a vibrant culture, the latest devices and a relaxed dress code reflecting our engineering spirit, it’s an exciting team environment geared to fuelling and realising ambition.
#LI-ONSITE
#LI-TM1
Dyson is an equal opportunity employer. We know that great minds don’t think alike, and it takes all kinds of minds to make our technology so unique. We welcome applications from all backgrounds and employment decisions are made without regard to race, colour, religion, national or ethnic origin, sex, sexual orientation, gender identity or expression, age, disability, protected veteran status or other any other dimension of diversity.
* Salary range is an estimate based on our AI, ML, Data Science Salary Index 💰
Tags: Architecture CI/CD DevOps Engineering Linux Machine Learning ML models Open Source Python Research Robotics TensorRT Testing
Perks/benefits: Career development Insurance Startup environment
More jobs like this
Explore more AI, ML, Data Science career opportunities
Find even more open roles in Artificial Intelligence (AI), Machine Learning (ML), Natural Language Processing (NLP), Computer Vision (CV), Data Engineering, Data Analytics, Big Data, and Data Science in general - ordered by popularity of job title or skills, toolset and products used - below.
- Open Data Manager jobs
- Open Lead Data Analyst jobs
- Open MLOps Engineer jobs
- Open Senior Business Intelligence Analyst jobs
- Open Data Science Manager jobs
- Open Principal Data Engineer jobs
- Open Data Engineer II jobs
- Open Power BI Developer jobs
- Open Sr Data Engineer jobs
- Open Data Scientist II jobs
- Open Product Data Analyst jobs
- Open Business Intelligence Developer jobs
- Open Data Analytics Engineer jobs
- Open Junior Data Scientist jobs
- Open Sr. Data Scientist jobs
- Open Senior Data Architect jobs
- Open Business Data Analyst jobs
- Open Data Analyst Intern jobs
- Open Big Data Engineer jobs
- Open Principal Data Scientist jobs
- Open Junior Data Engineer jobs
- Open Manager, Data Engineering jobs
- Open Data Product Manager jobs
- Open Data Quality Analyst jobs
- Open Research Scientist jobs
- Open GCP-related jobs
- Open Data quality-related jobs
- Open Business Intelligence-related jobs
- Open Java-related jobs
- Open ML models-related jobs
- Open Data management-related jobs
- Open Privacy-related jobs
- Open Data visualization-related jobs
- Open Finance-related jobs
- Open Deep Learning-related jobs
- Open PhD-related jobs
- Open APIs-related jobs
- Open TensorFlow-related jobs
- Open PyTorch-related jobs
- Open NLP-related jobs
- Open Consulting-related jobs
- Open Snowflake-related jobs
- Open CI/CD-related jobs
- Open LLMs-related jobs
- Open Generative AI-related jobs
- Open Kubernetes-related jobs
- Open Data governance-related jobs
- Open Hadoop-related jobs
- Open Airflow-related jobs
- Open Docker-related jobs