About the Role
Job Context
MIAKI is an organization with skilled 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 customized software solutions, digital transformation, managed services, and skilled technology resources across local and international markets.
Role & Responsibilities
- Design, develop, and maintain production-grade software using Rust.
- Lead technical design and implementation of complex industrial and systems-level applications.
- Develop reliable, secure, high-performance software for industrial and OT environments.
- Work with industrial platforms and enterprise systems such as SAP PM, Historians, MES, PLM, and other operational systems.
- Design and implement integrations between IT and OT systems.
- Work with industrial communication protocols including Modbus, OPC-UA, CAN/CAN Bus, and MQTT.
- Develop software for environments requiring high availability, reliability, performance, and operational resilience.
- Analyze complex technical requirements and translate them into scalable software architectures.
- Apply Rust concepts including ownership, borrowing, lifetimes, memory safety, error handling, concurrency, and asynchronous programming.
- Conduct code reviews and establish engineering best practices.
- Mentor engineers and provide technical guidance to development teams.
- Support technical documentation, architecture decisions, deployment planning, and operational readiness.
Job Requirements
Educational Requirements
Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, Electrical/Electronics Engineering, or a related discipline. Equivalent practical experience and strong technical expertise may also be considered.
Experience Requirements
7+ years of professional software development experience. Strong hands-on experience with Rust and systems-level software development. Previous experience providing technical leadership, mentoring, architecture guidance, or code review.
Required Technical Skills & Expertise
- Strong proficiency in Rust.
- Ownership, borrowing, lifetimes, traits, generics, error handling, and memory safety.
- Multithreading, concurrency, asynchronous programming, and performance optimization.
Requirements
Rust Programming
Strong proficiency in Rust and systems-level software development.
Technical Leadership
Experience providing technical leadership, mentoring, and architecture guidance.
Industrial Systems Knowledge
Experience working with industrial, OT, and enterprise integration environments.
Software Development Experience
7+ years of professional software development experience.
Nice to Have
Experience with multithreading, concurrency, and performance optimization.
Familiarity with industrial communication protocols like Modbus and OPC-UA.