Vacancy expired!
- Design, implement, and evolve data capture and recording software running on-device and on connected PC.
- Command and configure AR/VR devices and sensors, receive and record data in custom formats, and communicate at the extreme limits of high bandwidth over USB.
- Make effective use of multithreading and parallelization, and interface directly with operating system layers running on the device and PC.
- Coordinate closely with hardware, firmware, operating systems, software, research and data science teams each with independent requirements and priorities.
- Adapt to evolving prototypes and requirements. Deliver a modular and piecewise verifiable design and architecture.
- Write clear usage manuals, and instruct first time users of your software, help them troubleshoot problems against early hardware prototypes.
- Automate common setups and use cases to make repeated use efficient and pleasant.
- Prioritise usability, maintainability, ease of debugging and clear documentation, even while delivering complex features.
- 2+ years of full time experience with modern C (Linux, Windows Visual Studio, or Android Native).
- 1+ years of device or device-facing software engineering.
- Excellent working knowledge of memory management, caching, buffering, queueing, and computer architecture and operating system fundamentals.
- Strong troubleshooting and debugging skills, including C debugging tools, UNIX and/or Windows console commands, and at least one scripting language.
- Strong in modern C features, multithreading, data structures, and other general software engineering fundamentals.
- Clear and effective written and verbal communication skills. Demonstrated successful collaboration with teams from varying domains and backgrounds.
- Experience developing against low level communication or device driver layers.
- Experience with data transmission over USB and serial ports.
- In-depth familiarity with details of video and data storage and serialization formats.
- Experience in implementing network or other communication protocols.
- Comfortable with extracting data from files and streams, analysis and visualisation.
Vacancy expired!