logo[мetahunt]
> Djinni

Software Engineer

rustc++linuxbitbakeopenembeddedmakecmakeembedded systemsapi
experience2+ years
domainMedia
> full description

Job Description

- Bachelor’s and/or master’s degree in computer science or equivalent

- 2+ years in software development, architecture, API design and Linux systems programming

- Strong experience in Rust

- Excellent modern C++ programming skills

- Strong experience with embedded build systems

- Experience in designing, implementing, and operating complex build systems in both monolithic and multi-repository environments.

- Experience in embedded systems engineering and embedded build tooling, including Open Embedded, BitBake, Bazel, Make, and CMake.

- Strong communicator, describing issues and solutions to various audiences

- Strong verbal and written communication skills in English

- Bonus points for any background with SmartTV technology

Job Responsibilities

- Design, implement, and operate complex build systems across monolithic and multi-repository environments, spanning both Bazel and BitBake/OpenEmbedded build paths.

- Build systems that bring together all components of a software product and enable it to function on the low-powered hardware found in embedded systems.

- Provide embedded software architecture input to ensure released products work efficiently within storage, memory, and processing constraints.

- Operate the build system in partnership with all software development teams, delivering feature enhancements and bug fixes for engineers who depend on it.

- Interpret build system output to understand both the system itself and the development goals of the teams it supports, ensuring timely and accurate support.

Department/Project Description

We're looking for Software Engineer to help design, implement, and operate the build systems that bring together every component of Client's embedded software products — set-top boxes, televisions, and soundbar speakers — and get them running on resource-constrained hardware. You'll partner with software development teams across the company, shipping feature enhancements and bug fixes within the build system, and interpreting build output to keep every team unblocked.