Job Description
Summary
We are looking for a Lead Software Engineer to manage the development of our in house mining management platform. This role is focused on building backend infrastructure but will liaise with the frontend. As a Lead Software Engineer, you will be responsible for oversight and engineering planning of new, expanded, or enhanced platforms. This is a key hands-on role within our Mining Operations product engineering team with the opportunity to develop, deliver, and support innovative products in a quickly growing and exciting industry. We are looking for an engineer who is a big-picture thinker who thrives on creating application architecture and solving challenging technical problems.
What Youll Be Doing (Responsibilities):
- Own the software development life cycle which includes establishing the scope, business requirements, technology analysis, development best practices, and testing requirements
- Design, develop, debug, integrate, deploy, and maintain applications that meet requirements and business objectives
- Works with other functional areas to establish a design, technology, product development strategy and influence and drive decisions to meet development standards and launch within project timelines
- Implement software engineering solutions to meet requirements, architectural direction, and adoption efforts
- Determine root cause for the most complex software issues and develop practical, efficient, and permanent technical solutions.
- Code (and responsible for teams code) and successfully perform unit and integration testing of software to ensure proper and efficient execution, as well as compliance to the business and technical requirements
- Work in Node.js, MySQL, and Mongo with deep knowledge on basic algorithms and other Document and Key-Value data structures and ability to adopt new languages and architecture patterns needed for the work
- Resolve problems that arise with production applications in a timely manner to ensure the efficient and proper functioning of application components
- Migrate applications to quality assurance and/or the production environment, or perform quality assurance as necessary
- Capable of coaching, leading, and communicating a vision for best practices, coding standards, automation, test driven and behavioral driven development
Our current stack:
- Backend: Typescript, Websockets
- Frontend: Typescript
- Node.js
- Google Cloud
- Docker, Kubernetes
What We Look For In You (Required Qualifications):
- Bachelors degree or higher in computer science, engineering, or related field or equivalent experience
- 10+ years of experience in product software design and development engineering
- 5+ years of experience acting in lead, supervisory, or mentor capacity
- Experience working in Google Cloud environments
- Solid understanding of SQL and Database Schema
- Experience leading multiple concurrent IT projects (e.g., capacity planning, application migrations, etc.)
- Experience in the full software development lifecycle and end-to-end testing
- Must be committed to incorporating security into all decisions and daily job responsibilities
Skills
- Software Engineering