Software Engineer II at Wenco a Hitachi Construction Machinery subsidiary
Richmond, BC, Canada -
Full Time


Start Date

Immediate

Expiry Date

23 Nov, 25

Salary

120000.0

Posted On

23 Aug, 25

Experience

5 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Eligibility, Testing, International Travel, Computer Science, Functional Testing, Software Engineering Practices, Unit Testing

Industry

Computer Software/Engineering

Description

About the Company
Wenco International Mining Systems (www.wencomine.com), a subsidiary of Hitachi Construction Machinery (HCM), provides industry leading, innovative technologies to customers in the mining and material movement sectors, enabling sustainable and safe operations.
Wenco has R&D offices located in the Greater Vancouver Canada and Brisbane Australia. This is for the Richmond office.
As Wenco continues to build our next generation of technology, we need a wide range of professionals to help us achieve our objectives. We are currently looking for a full-time Intermediary Software Engineer with skills in the development, deployment and monitoring of highly available, highly robust services.
You will work as a member of an agile software team, focusing on Wenco’s Underground product. We are looking for someone who is self-motivated, independent and likes delivering useful products.
About the Product

We are building a completely new product, from the ground up with a small 4-person team:

  • 1x Linux C++ developer (onboard & backend processing, implementing business logic and OpenAPI endpoints)
  • 1x Web frontend developer
  • 1x Experienced manager (25+ years in embedded mining software)
  • 1x You

So, to be clear, No legacy code to mender or care for.
The new product will be serving the underground mining market. The onboard product is composed of an embedded computer and an Android tablet as the operator interface. The mobile equipment communicates with a Kubernetes backend server and receives instructions from the equipment dispatcher and production planning. Both backend and onboard systems will be hosted and deployed on Linux, the User interface will be on an Android tablet, hence the use of Flutter.
The team will have freedom of technology selection and we expect the team to be highly autonomous and have high velocity. This is why we are starting with such a small team. If you are looking for rapid growth and an opportunity to hone your skills, then this is the job for you. The team will grow with time and demonstrated stability & success.
About the Role
Primarily as a backend / business logic developer on the team, you are expected to be proficient in C++, OpenAPI implementation and Linux tool set under Ubuntu in WSL targeting a Debian distribution, but you can leverage our local C++ community of practice. We have many C++ developers in the company.
You are also expected to learn Flutter (dart language) to help on the User Interface side. UI implementation is not your primary mandate, but you are expected to help from time to time when there’s a crunch to deliver on the UI.
At the beginning, you will focus on developing the vehicle onboard business logic and endpoint that will be leveraged by the web application developed by the UI person on your team. Then slowly transition to implementing back office services and endpoints that will be leveraged by the dispatcher’s web application and 3rd party web endpoints.

Key Responsibilities

  • Development
  • Design and implement robust, reliable, traceable and resilient software solutions for C++ embedded mobile applications
  • Contribute to design and implementation across the full stack including backend web services both onboard and server side
  • Document your work. Design and code.
  • Support technical services and operations teams with investigation and reproduction of customer issues.
  • Technical leadership
  • Be relentless in pursuit of continuous improvement
  • Promote a culture of quality and technical excellence within the development team.
  • Product development support
  • Interface with product management/owners and developers to define and improve requirements and automated and manual test cases.

Qualifications & Skills

  • A minimum of 5 years work experience as a software engineer
  • C/C++ experience for 5 years
  • Experience across the whole development lifecycle from concept to development, unit testing, automated functional testing, deployment and monitoring
  • Experience working with Scrum practices
  • Knowledge of professional software engineering practices for the full software development life cycle, including best practices related to coding standard, code reviews, source control management, build processes, testing and deployment

Nice to Have

  • Experience with containerization and orchestration and management tools such as Kubernetes
  • Commercial experience delivering products onto cloud platforms such as AWS or Azure
  • Experience and/or knowledge of the mining industry

Education & Eligibility

  • Bachelor Degree in Computer Science or Systems/Software Engineering or equivalent
  • This role may require some international travel (< 10%)
  • Must be eligible to work in Vancouver Canada.

Base salary of $120,000- $140,000, commensurate with experience and qualifications.
Wenco advances the efficiency and safety of the world’s surface mining equipment through our fleet management systems. We are committed to providing a stable yet exciting work place environment for individual employees to build and grow their career with the Company.
Wenco is an Equal Opportunity Employer.
Disclaimer
The information in this description has been designed to indicate the general nature and level of work performed by employees. It is not designed to contain or be interpreted as a comprehensive inventory of all duties, responsibilities, and qualifications required of employees assigned to this job. It is not intended as an employment contract. Job descriptions are subject to change, which may not necessarily affect compensation.


As our team experiences high volumes of applications, only shortlisted candidates will be contacted. To be considered, please ensure a resume is attached

Responsibilities
  • Development
  • Design and implement robust, reliable, traceable and resilient software solutions for C++ embedded mobile applications
  • Contribute to design and implementation across the full stack including backend web services both onboard and server side
  • Document your work. Design and code.
  • Support technical services and operations teams with investigation and reproduction of customer issues.
  • Technical leadership
  • Be relentless in pursuit of continuous improvement
  • Promote a culture of quality and technical excellence within the development team.
  • Product development support
  • Interface with product management/owners and developers to define and improve requirements and automated and manual test cases
Loading...