About the Role
Job Context
MIAKI is an organization with skillful resources that are relentlessly working to make a difference in the spectrum of Tech & Digital Services. As a Multi-Country Service Provider, we specialize in delivering customized software solutions, mobile applications, digital transformation services, and managed services across local and international markets.
We are looking for a skilled Rust Software Engineer to join our technology team and contribute to the development of reliable, high-performance, and production-grade software solutions for industrial applications.
Role & Responsibilities
- Design, develop, and maintain production-grade software solutions using Rust.
- Translate technical and business requirements into scalable, reliable, and maintainable software solutions.
- Develop efficient and performance-oriented applications for industrial and production environments.
- Apply sound software architecture, coding standards, and engineering best practices throughout the development lifecycle.
- Analyze, troubleshoot, and resolve complex technical issues across development, testing, and production environments.
- Optimize application performance, memory utilization, reliability, and overall system stability.
- Participate in technical design discussions, code reviews, and architectural decisions.
- Develop and maintain unit and integration tests to ensure software quality and reliability.
- Collaborate closely with Product, QA, DevOps, and other engineering teams to ensure successful delivery.
- Contribute to deployment, release, monitoring, and continuous improvement activities.
- Prepare and maintain technical documentation related to system design, implementation, and operational processes.
- Stay current with developments in Rust, systems programming, software architecture, and modern engineering practices.
Job Requirements
Educational Requirements
Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, or a related discipline. Candidates with strong practical experience and relevant technical expertise may also be considered.
Experience Requirements
Proven professional experience in Rust software development. Strong hands-on experience developing and maintaining production-quality software. Experience in industrial software, systems programming, embedded systems, automation, or other performance-critical applications will be highly preferred.
Required Technical Skills
- Rust & Systems Programming: Strong proficiency in Rust, understanding of ownership and borrowing, lifetimes, memory safety, error handling, concurrency, and asynchronous programming.
- Software Engineering & Architecture: Strong understanding of software engineering principles and design patterns, knowledge of modular, scalable, and maintainable software architecture.
- Development & Collaboration: Proficiency with Git and version control, experience working with code reviews and collaborative development workflows.
- Testing & Quality: Experience developing unit and integration tests, strong focus on code quality.
Requirements
Rust programming
Strong proficiency in Rust and understanding of its core concepts.
Software engineering principles
Strong understanding of software engineering principles and design patterns.
Development collaboration
Experience working with Git and collaborative development workflows.
Testing experience
Experience developing unit and integration tests.
Nice to Have
Experience in industrial software or performance-critical applications.
Ability to work effectively within Agile or structured software development environments.