Software Engineer (Rust)

Software Engineer (Rust)

Full-Time 100000 £ / year No home office possible
Microtech Global Ltd

At a Glance

  • Tasks: Develop cutting-edge firmware and tools in Rust for innovative tech projects.
  • Company: Join a forward-thinking tech company focused on embedded systems and security.
  • Benefits: Competitive salary, flexible work options, and opportunities for professional growth.
  • Why this job: Make a real impact in the tech world while working with advanced technologies.
  • Qualifications: Proficient in Rust with a solid understanding of programming concepts and tools.
  • Other info: Dynamic team environment with excellent career advancement opportunities.

This includes work in areas such as:

  • RISC-V firmware and driver development.
  • Software hardening and security tools.
  • Embedded operating systems (in Rust and C).
  • Compilers, code generators, and linters.
  • Simulators and emulators (e.g. QEMU).
  • Electronic design automation (EDA) tools.
  • Performance and code size analysis.
  • Cloud-based infrastructure (such as continuous integration pipelines).

Requirements:

  • Highly proficient in Rust programming; deep understanding of fundamental concepts such as the ownership model, lifetimes, concurrency, parallelism, memory management and procedural macros.
  • Solid knowledge of the Rust ecosystem, including tools and libraries.
  • A high standard of written and spoken English.

Preferred or highly valued:

  • Experience designing, implementing, and maintaining large-scale or modular Rust codebases.
  • Expert understanding of unsafe Rust, FFI, and low-level systems programming.
  • Strong proficiency in C; familiarity with C++ and Python are a plus.
  • Solid understanding of compiler internals; experience with LLVM is a plus.
  • Experience with build systems and reproducible tooling (e.g. Bazel, Nix, uv).
  • Experience developing for embedded or resource-constrained environments, including real-time systems.
  • Familiarity with CI/CD for embedded or systems software.
  • Strong knowledge of computer architecture; some experience with assembly languages (x86, RISC-V); familiarity with hardware design is a plus.
  • Good knowledge of Linux.
  • Experience contributing to open source projects.
  • Higher degree levels and academic research experience are highly valued.

Software Engineer (Rust) employer: Microtech Global Ltd

As a Software Engineer (Rust) at our innovative tech company, you will thrive in a collaborative and dynamic work culture that prioritises creativity and technical excellence. We offer competitive benefits, including professional development opportunities and a commitment to work-life balance, all set in a vibrant location that fosters both personal and professional growth. Join us to be part of a forward-thinking team dedicated to pushing the boundaries of technology in embedded systems and beyond.
Microtech Global Ltd

Contact Detail:

Microtech Global Ltd Recruiting Team

StudySmarter Expert Advice 🤫

We think this is how you could land Software Engineer (Rust)

✨Tip Number 1

Network like a pro! Reach out to folks in the industry, attend meetups, and join online forums. You never know who might have the inside scoop on job openings or can refer you directly.

✨Tip Number 2

Show off your skills! Create a GitHub profile showcasing your Rust projects, especially those related to firmware or embedded systems. This gives potential employers a taste of what you can do beyond your CV.

✨Tip Number 3

Prepare for technical interviews by brushing up on Rust concepts and coding challenges. Practice explaining your thought process clearly, as communication is key in tech roles.

✨Tip Number 4

Apply through our website! We love seeing candidates who are genuinely interested in joining us. Tailor your application to highlight your experience with Rust and any relevant projects you've worked on.

We think you need these skills to ace Software Engineer (Rust)

Rust Programming
Ownership Model
Lifetimes
Concurrency
Parallelism
Memory Management
Procedural Macros
Rust Ecosystem
C Programming
Unsafe Rust
FFI
Low-Level Systems Programming
Compiler Internals
LLVM
Embedded Systems Development
CI/CD for Embedded Software
Computer Architecture
Assembly Languages
Linux Knowledge
Open Source Contribution

Some tips for your application 🫡

Show Off Your Rust Skills: Make sure to highlight your proficiency in Rust programming. We want to see your understanding of key concepts like ownership, lifetimes, and concurrency. Don’t just list your skills; give us examples of how you've applied them in real projects!

Tailor Your Application: Take a moment to customise your application for the Software Engineer role. We love seeing candidates who connect their experience with our specific needs, like embedded systems or compiler internals. It shows us you’re genuinely interested in the position!

Keep It Clear and Concise: We appreciate a well-structured application. Use clear language and avoid jargon where possible. Remember, we’re looking for a high standard of written English, so make sure your application is easy to read and free from typos!

Apply Through Our Website: Don’t forget to submit your application through our website! It’s the best way for us to receive your details and ensures you’re considered for the role. Plus, it makes the whole process smoother for everyone involved.

How to prepare for a job interview at Microtech Global Ltd

✨Master the Rust Fundamentals

Before your interview, make sure you’re well-versed in Rust's ownership model, lifetimes, and concurrency. Brush up on procedural macros and memory management, as these are crucial for the role. Being able to discuss these concepts confidently will show your deep understanding of the language.

✨Showcase Your Projects

Prepare to talk about any large-scale or modular Rust codebases you've designed or maintained. If you’ve contributed to open source projects, highlight those experiences. This not only demonstrates your technical skills but also your ability to collaborate and contribute to a community.

✨Familiarise with Embedded Systems

Since the job involves embedded operating systems, brush up on your knowledge of real-time systems and resource-constrained environments. Be ready to discuss any relevant experience you have, especially if it involves low-level systems programming or working with hardware design.

✨Prepare for Technical Questions

Expect questions on compiler internals and tools like LLVM. Familiarise yourself with build systems and CI/CD processes, particularly in the context of embedded software. Practising coding problems related to these areas can help you feel more confident during the technical portion of the interview.

Land your dream job quicker with Premium

You’re marked as a top applicant with our partner companies
Individual CV and cover letter feedback including tailoring to specific job roles
Be among the first applications for new jobs with our AI application
1:1 support and career advice from our career coaches
Go Premium

Money-back if you don't land a job in 6-months

>