- Design and Development
- Singapore - Advanced Manufacturing
Dyson began thirty years ago with James Dyson and a handful of engineers questioning everyday products, thinking differently and making them better. We are now the world's number one vacuum cleaner manufacturer in the UK, US, Tokyo, Western Europe and Australasia.
At Dyson we are encouraged to think differently, challenge convention and be unafraid to make mistakes. We’re creative, collaborative, practical and enthusiastic, but most of all we’re hugely passionate about what we do. We are looking for individuals who wish to invent, design and develop leading products for the global market. By working in our world class Research Design and Development department, these individuals have the opportunity to work alongside other leading technical specialists and highly motivated creative people, to develop products which fulfil our ambition of being truly different and better than our competitors.
About the role
Dyson offers an exciting opportunity for a permanent Senior Software Engineer to work with us in Singapore as part of the dynamic global team working on the Dyson Digital Motor. This role will involve the development, debugging and validation of embedded software for motor and other control systems as well as creation of supporting documentation, version control and release management.
Based in Dyson’s Singapore Advanced Manufacturing facility you will be joining the Dyson Digital Motor Drives (DDMD) team within the Dyson Global Electronics organisation. The DDMD team form part of the wider Motors and Power Systems Group and is a significant part of Dyson RDD with a growing team of more than 100 highly skilled engineers, scientists and technicians in its UK and Singapore offices. The Group focuses on researching and developing cutting-edge electric motors, drives and control systems for integration into existing and future Dyson products from concept design to fully automated production.
This is what we need you to do
- Development and maintenance of motor and product control software for new and existing projects both before and after SOP (start of production). This will involve independent working and close collaboration with the DDMD teams in Singapore and the UK on the implementation and modification of novel control schemes within the constraints of low-cost microcontrollers.
- Support the DDMD software team through software validation to ensure that all released software is fully functional and fit for purpose. This will include code peer review, emulator validation and full system validation.
- Develop real time embedded software in C running on our bespoke ARM based motor/heater emulator platforms. Developing python based test suites to test our control system target software against their requirements.
- Participating in code and design review activities.
- Documenting software requirements, design and implementation. Documenting software test plans. Generate high-quality test reports and other documentation with all data and findings from all work undertaken.
- Support the DDMD software team through the software release process and change management systems through the preparation of high quality documentation of either your own work or that of others.
- Completion of software FMEA’s carried out in conjunction with the hardware and system FMEA.
- Development of software for motors and external test systems to enable automated production testing including motor production line tune and test and power electronics hardware test.
- Responsible for embedded software aspects of failure analysis: completing root cause analysis of any failures of the motor or associated drive and control system at both product and motor level.
- Take ownership of software components driving their design, development and validation though to mass volume production.
- Be able to travel for short-term secondments to the UK office to work directly with the local software, hardware and motor drives teams to develop concepts and specifications and start the development of new software such that all requirements can be met. Also to provide local support in the UK during periods of high activity and resource demand.
- Be able to apply your skills to other areas of work and tasks within the business as may be required of you on occasion for the benefit of the wider team. This could include, but is not limited to, supplier liaison for issue resolution or audit, engineering design work, test rig building and production equipment commissioning.
These are the essential skills we need you to have
- A good first degree in electrical/electronic/software engineering or equivalent qualification or demonstrable experience of equivalent-level working.
- At least 3 years professional experience in a relevant industry.
- Be proficient in the development of code for low cost embedded systems for motor control applications and other associated power systems and test equipment with demonstrable use of C languages.
- Experience in bare-metal low level microcontroller software development.
- Strong background in real time embedded C.
- Ability to plan and estimate development tasks
- Experience with software verification strategies including unit testing.
- Ability to be innovative and creative in finding solutions to problems both at a detailed code level as well as at a system level. This also includes the ability to identify and resolve deep software bugs.
- Ability to understand the requirements of the software control system either from your own design work or from other team members’ and be able to link this to at least one demonstrable software design methodology.
- Knowledge of microcontrollers including their instruction set and peripherals to be able to translate system requirements into reality in the most efficient way through understanding of analogue and digital electronics and their interface to the microcontroller peripherals.
- Creation of formal software system designs and the implementation of code based on these designs. Use of appropriate design tools such a state machines, flow diagrams and timing diagrams.
- Generation of test specifications to ensure product reliability and robustness at key stages during code development. This includes the development of test environments including simulation, emulation and hardware/test equipment interactions.
- Strong communication and team working skills to be able to form a bridge between multiple teams of different disciplines working on a single, integrated product across multiple global sites.
- Strong technical skills and an ability to use standard laboratory equipment to set up experiments and to take precise measurements of motors and mains-referenced control systems to aid performance analysis, fault-finding and completion of GR&R testing.
- Be flexible and open-minded to respond quickly to changes in project priorities. Be able to demonstrate sound theoretical knowledge, reasoning and problem solving skills in engineering.
- Be able to clearly report progress in meetings together with producing a high standard of documentation.
- Proactive and persistent nature demonstrated by an inquisitive approach.
- Be a creative thinker and problem solver; highly self-motivated and self-reliant with enthusiasm for motors, power systems and Dyson products.
These skills are desirable but not essential
- Sufficient knowledge of low-cost microcontrollers to enable the selection and integration of the most appropriate device for any given application. Specific knowledge of the Atmel Arm Cortex M0+, NXP LPC family or STMG4 family microcontrollers will be beneficial.
- Familiarity of low-level embedded microcontroller-based control and operation of brushless motors (e.g. permanent magnetic brushless DC motor, switch reluctance motor) and the topology of the motor drive hardware system to allow creativity in the implementation of motor control schemes.
- Basic knowledge of the power electronics circuitry and how different control can influence power device performance.
- Be proficient in the use of LabView and Microsoft Visual Studio to be able to maintain existing and create new programs.
- Ability to code in Python language.
- Knowledge of Agile Software Development Methodologies and tools such as GIT.
- Knowledge of control systems.
- Experience of planning and working within an Agile Framework.
Dyson Singapore monitors the market to ensure competitive salaries and pension contributions. Beyond that, you’ll also enjoy a profit-related bonus, generous leave and life insurance. However, financial benefits are only the start of a Dyson career. Rapid professional growth, leadership development and new opportunities abound.
At Dyson, it's about more than our machines. We recognise that our success comes from our inventive people. We believe in including everybody and supporting you on your journey with us
We are following the government guidelines regarding COVID19. At this time all interviews will be conducted via video or telephone. We’re taking these precautionary measures to protect both our employee and candidate wellbeing. Our Talent Acquisition team will work with you and provide further information as appropriate.