Remote job
Software Engineer – Applications and User Interface
Job details
About this role
Role overview Develop the applications and interfaces through which users operate complex technical products, connecting frontend experiences with APIs, backend services, and system software. The work spans feature design, implementation, testing, and deployment, with close collaboration across software, hardware, embedded, and system test disciplines.
Responsibilities - Build and maintain user-facing applications, interfaces, and APIs. - Create responsive, dependable frontend experiences for complex systems. - Integrate interface features with backend and systems software, and investigate issues across the stack. - Own features from requirements through development, testing, and deployment. - Contribute to architecture, design decisions, development tools, and software quality. - Support product readiness and technical demonstrations with customers or partners as needed.
Requirements - Strong experience developing frontend or other user-facing software. - Python skills and experience with JavaScript or TypeScript and modern frameworks. - Experience integrating software with APIs, backend services, or other system components. - Familiarity with Linux and ability to become productive in an existing codebase. - Strong debugging and problem-solving skills, with sound judgement about delivery, quality, and maintainability. - Good engineering practices, including version control, testing, code review, and clear cross-team communication.
Nice to have - C, C++, embedded systems, or microcontroller development; familiarity with STM32 or Xilinx. - Knowledge of interfaces such as PCIe, AXI, SPI, I2C, or Ethernet, or experience working with hardware engineers and schematics. - Networking, IT infrastructure, scripting, machine learning, or optical fibre experience. - Experience in an early-stage or deep-tech environment.