Advanced IoT Research Software Engineer (Bluetooth LE, Wi-Fi, C, C++, Java, Python, Go, Node JS)
The Connectivity Research Team is responsible for ensuring the next generation of connected products and technologies are properly explored, tested and refined in readiness to transition to the team responsible for producing our IoT solutions. This includes ensuring we investigate and utilise the right technologies, techniques, services and security. Core to this is exploring the proposition, technologies and development by implementing proof of concept integrations and systems.
This is an ideal role for a talented, multi-skilled engineer who thrives at being at the forefront of technology and in particular IoT related technologies. It is a unique opportunity to help define Dyson’s future IoT connectivity technologies and architecture.
- You will be working in a global multi-disciplinary team including mobile and cloud Developers, app and product UX/UI designers and electronics and mechanical engineers. You will often be collaborating with experts from different areas of RDD (Research, Design & Development), designing how connectivity is woven deeply into our products. You must be independent and methodical with excellent problem solving skills.
- It is essential to be knowledgeable about the latest trends in connectivity and mobile technology and comfortable with rapidly picking up new technologies. A thirst to overcome problems and limitations in order to reach our vision is absolutely essential.
- You should be comfortable with rapid prototyping of electronic hardware, investigating and evaluating new and emerging technologies, protocols and digital platforms.
- Produce clear and concise reports and presentations communicating your research and demonstrating your solutions.
- Work closely with other RDD groups to research and develop next generation platforms and architectures for connectivity helping to realise the embedded connectivity strategy.
- Support the product delivery team with the early stages of transitioning prototypes to production.
- Design and validate new features, often with prototype hardware.
- Excellent programming skills with a minimum of 3 years C / C++.
- Good understanding of software engineering fundamentals.
- Understanding of embedded systems design and integration.
- Embedded experience working with different microcontrollers and platforms (e.g. Arduino, Raspberry Pi, ARM, Linux and RTOS environments)
- Good software and rapid prototyping experience.
- Track record of working with 3rd parties to explore technology.
- Proven track record of developing robust requirements specifications.
- Ability to work in an interdisciplinary team.
- Ability to communicate complex ideas simply.
- Good understanding and experience of application development practices.
- Experience interfacing to different sensors; analogue, digital and data collection.
- Experience of developing proof of concept embedded prototypes to an accelerated timescale.
- Experience of integrating mobile applications with cloud solutions.
- Experience of integrating solutions with cloud and web services for data interchange and synchronisation.
- Experience of connectivity technologies.
- Experience of developing systems that use messaging services to communicate.
- Good creative skills with the ability to create appealing application interfaces and compelling user interactions through hardware and software interfaces.
- Experience with user orientated design and the quantifying of seductive value propositions.
- A strong understanding of/ability to define and prototype the hardware solutions that will benefit most from connectivity.
- Knowledge of IoT protocols (Bluetooth, MQTT, Coap etc).
- Programming for resource constrained devices.
- Electronic circuit design experience.
- Experience interfacing with embedded systems (M2M).
- Strong communication skills and the ability to build strong relationships with others.
- Able to take accountability for deliverables and focus on achieving them in a timely manner to the highest quality standards.
- Customer focused and keen on exceeding expectations.
- A strong understanding of product.
- Self-motivated, dynamic and results-driven.
- Professional in tense or challenging situations.
- Clear communication, good inter-personal skills at all levels of contact.
- Ability to work across boundaries and bring together a wider number of disparate elements in a cohesive way to enable a vision.
- Strong planning & time management skills.
- Ability to prioritize and manage workload (both your own and others).
- Sensitive to cultural differences across a global company.
- Ability to be flexible as part of a small team in a growing company.