/

Rust Development Lead

Worldwide, Remote

The Rust Development Lead is responsible for designing, developing, and implementing high-quality software solutions for the company that is efficient, readable, scalable, lean, and cloud-friendly and for providing leadership within the Rust Team. 

 Required activities and tasks: 

  • Creating the architectural designs, planning the development process, and execution

  • Building software using programming language Rust and other languages (C++, go, etc.) 

  • Multi-platform development (Linux, Windows, AWS, Azure, GCP) 

  • Participate as an active member in Architecture forums, make proposals, and decisions

  • Planning and team learnings, Organize planning sessions and retrospective 

    • Provide guidance in planning for development  

    • Provide data on the performance of developers in retrospective 

    • Take an active part in refinement meetings with Refinement issues - Product and Engineering Manager 

  • Research new technology, performance testing, working with DevOps and Support 

    • Liaising with DevOps on environments needed for Development 

    • Working with Support on high-profile urgent issues 

    • Working with other lead developers from other teams 

  • Working with the Product Owner and Senior Project Manager to help refine issues 

  • Provide an example of standardization of work – the lead’s issues contain description, architectural breakdown, and clear and clean code with reasons why the direction was chosen 

  • Daily update of reports – allowing teams to see progress 

  • Time management Code Reviews, Architectural Discussions, Merging 

  • Development of own lead issues 

  • Working with frontend, backend, and DevOps teams to improve test coverage and test environment 

  • Suggestions to improve ways of working e.g., when a new developer starts we set up a few basic examples of ways of working. Working with Hubstaff and Git 

  • Providing information and decisions on new libraries when required 

  • Research, analysis, and evaluation of software applications and operating system needs; and capturing of that research in the Gitlab repository 

  • Research, design, and develop the product architecture 

  • Daily committing of code into the Gitlab repository 

  • Estimation and collaboration in planning sessions via digital video conference facilities 

  • Testing both manual and unit tests of software developed by yourself and your teammates 

  • Modifying existing software to fix bugs, adjust to new hardware, or improve performance  

  • Management of software programming and documentation development; where required discussion with technical writers to explain work that has been completed 

  • Participation in development and testing – through the writing of code, unit tests of your own work, as well as code review of teammates, work 

  • Planning of work and leave to ensure that project timelines are not jeopardized 

  • Provide input to technical writers where documentation is required 

  • Communicating where constraints will be missed i.e. timings or technology stack 

  • Continuous learning on new networking technologies and software products, technologies 

  • Strive to develop innovations that serve the company strategy and overall team performance 

Requirements:

  • At least 4-5 years of programming experience with the Rust language.

  • 10+ years in systems programming, which may include other languages (C++, go, etc).

  • 5+ years of experience as Lead Developer.

  • Building and working in high-performance agile software development teams. 

  • Building processes to support highly effective teams. 

  • Network programming skills.

  • Multithreaded programming knowledge.

  • Experience with SSL/TLS APIs.

  • Good algorithmic skills.

  • Debugging, profiling, and performance optimization skills.

  • Secure coding practices.

  • Care for the quality and readability of your code.

  • Passionate about hacking on Linux systems while also feeling at home on Windows. Multi-platform development experience.

Nice to have:

  • Experience in building distributed systems,

  • Build automation,

  • Prior experience working as a software architect.

  • Cloud platforms (AWS, Azure, GCP),

  • Master's degree in Information Technology or similar,

  • Customer-oriented and able to communicate in English,

Most importantly you should be a quick learner and eager to jump on and understand new technologies.