What are the responsibilities and job description for the Principal Software Engineer position at Komatsu?
Principal Software Engineer
The Company
Komatsu is an indispensable partner to the construction, mining, and industrial machinery markets, maximizing value for customers through innovative solutions. With a diverse line of products supported by our advanced technologies, regional distribution channels, and a global service network, we tap into the power of data and technology to enhance safety and productivity while optimizing performance.
Modular Mining Systems is the global leader in mine management technology and a wholly owned subsidiary of Komatsu Ltd. Our innovative technology powers mine operations in every corner of the globe. The products we cultivate, the solutions we engineer, and the service we deliver set us apart in the mining technology industry. We’re more than a company, and we’re a community of passionate, creative professionals striving toward a shared vision: revolutionizing the way the mining industry operates. With a presence stretching from Johannesburg to Vancouver, Sydney to Lima, you are part of a global brand that supports creativity, fosters innovation, and encourages you to think big, share ideas and have impact.
The Role
The Autonomous Haulage System (AHS) is a comprehensive fleet management system for mines. The autonomous trucks are centrally controlled through a wireless network that integrates on-board vehicle controllers, high precision global positioning, and obstacle avoidance systems. The AHS Product Development team is responsible for building innovative solutions to unique and challenging autonomous operation problems. Working with our partners around the world, you will help design and support the next generation of mine optimization technologies and build the future platforms that will drive the changes in the mining industry for generations.
As a Principal Software Engineer – Autonomous Haulage System (AHS), you will engage with experienced cross-disciplinary team members to conceive, design and build innovative automation products. You will work closely with product management, hardware engineering, and operations teams. You must be responsive, flexible, and able to succeed in an open and collaborative peer environment.
Key job responsibilities
- You will serve as a technical leader on demanding, cross-functional projects.
- You will functionally decompose complex problems into simple, straight-forward solutions.
- You will fully and completely understand system inter-dependencies and limitations.
- You will possess expert knowledge in performance, scalability, enterprise system architecture, and engineering best practices.
- You will assist in the career development of others, actively mentoring individuals and the team on advanced technical issues and help managers guide the career growth of their team members
- You will exert technical influence over multiple teams, increasing their productivity and effectiveness by sharing your deep knowledge and experience. You are a visionary leader, builder and operator.
- You will balance technical leadership and savvy with strong business judgment to make the right decisions about technology choices.
- You will be able to occasionally travel internationally.
Basic Qualifications
- 10 years of non-internship professional software development experience
- 10 years of programming experience, with strong Java coding skills
- 5 years of leading design or architecture (design patterns, reliability and scaling) of new and existing systems experience
- Experience building complex software systems that have been successfully delivered to customers
- Experience as a mentor, tech lead or leading an engineering team
Preferred Qualifications
- Deep hands-on technical expertise in large scale full stack development and building complex distributed systems
- 10 years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
- Experience in event-driven microservices and REST API’s
- Experience taking a leading role in building complex software systems that have been successfully delivered
- Experience with network protocols, network programming, and distributed application debugging and analysis
- Demonstrated ability to mentor other software developers to maintain architectural vision and software quality
- Excellence in technical communication with peers and non-technical stakeholders
- Bachelor’s or master’s degree in computer science or equivalent