Lead Application Developer

Rio Tinto

Posted on:  31st Aug 2023

Lead Application Developer, Perth - Australia

Rio Tinto is building a world-class software engineering capability

Within our company wide Information Systems & Technology function, we are building an internal software development and delivery team focusing on high value and strategic products for the digital transformation of Rio Tinto.

We are building this capability and capacity with the support of a strategic partnership with Endava, one of the world’s leading software engineering companies. We are recruiting for junior, experienced and leadership roles to establish this capability for scaling as we shift our technology landscape to products and platforms. We are building a culture that is value driven, diverse and inclusive, innovative and fun with challenging problems and opportunities to solve.  

About the role

We're looking for a Lead Developer who is a team player, passionate about programming, and oriented towards providing the best experience to the end user. Someone with excellent communication and time management skills, a fast learner with a growth mindset.

The application support team provides support to and develops applications. As a leader of this team, you will be responsible for defining the technical strategy for specific products, designing, coding, testing, correcting, and documenting large and/or complex programs and program modifications using agreed standards and tools to achieve a well-engineered result. In addition, you will be responsible for coordinating the delivery of management, technical and administrative services to support and maintain live applications (Level 3 support).

We are looking for an individual who is willing to build professional relationships with key stakeholders within the company, with the ability to understand complex problems and focus on the best solutions according to the business needs. You will be exposed to a variety of challenges, from technical solutions and design to improving service delivery from an end-to-end perspective.

The role may require on-call support to ensure uninterrupted operations, with arrangements determined by leadership and agreed upon with you. You will receive appropriate compensation for this additional responsibility.

About the work

Software Development

Developing software components to deliver value to stakeholders.

  • Design, code, verify, test, document, amend, and refactor complex programs, scripts, and integration software services.
  • Provide line management for junior and senior developers, nurture talent, skills progression, manage performance and build team cohesiveness and engagement.
  • Lead the selection of software development methods, tools, and techniques.
  • Apply established standards and tools to yield well-engineered outcomes.
  • Lead reviews of colleagues' work and actively participate in peer reviews.
  • Provide advice on the best-in-class processes and techniques for the development, deployment, and support of user interfaces, applications, and platform solutions.
  • Leverage the latest available technologies to manage and scale data pipelines and analytics models flexibly.
  • Design, develop, and maintain software applications and tools in alignment with organizational needs.
  • Collaborate with cross-functional teams to gather and analyse requirements, translating them into technical solutions.
  • Write clean, efficient, and maintainable code, adhering to coding standards and best practices.
  • Implement software testing strategies, including unit testing and integration testing, to ensure application reliability.
  • Troubleshoot and debug application issues, providing timely resolutions and improvements.
  • Collaborate with cross-functional teams, including developers, system administrators, and business analysts, to solve complex problems and implement solutions.
  • Share knowledge and expertise with team members through training sessions, documentation, and mentorship.
  • Stay current with industry trends and emerging technologies relevant to IT support and application development.

Application Support

Delivering management, technical, and administrative services to support and maintain live applications.

  • Act as the highest level of support escalation, expertly handling complex IT issues and incidents requiring in-depth knowledge and expertise.
  • Investigate, diagnose, and resolve critical system, network, and application issues to ensure minimal downtime and optimal performance.
  • Collaborate closely with Tier 1 and Tier 2 support teams, providing guidance and mentorship for escalated cases.
  • Develop and maintain comprehensive documentation of issue resolution procedures and best practices.
  • Maintain application support processes, ensuring that all support requests adhere to established procedures.
  • Utilise advanced application management software and tools to investigate issues, compile performance statistics, and generate reports.
  • Investigate, identify, and resolve issues, incidents, and problems related to applications within a broad area of competence.
  • Execute non-routine maintenance tasks related to applications within a broad area of competence.
  • Monitor escalated requests for application support, taking prompt action to avoid or minimize delays and prioritising requests in accordance with established criteria and organizational needs.
  • Provide training and knowledge transfer to support the deployment and continuity of the products developed.
  • Provide on-call support as needed to ensure continuous operations.

About you

Essential skills

  • Bachelor’s degree level or holds a relevant professional qualification, such as Bachelor of IT, Computer Science, Software Engineering.
  • Relevant experience as a software engineer and support specialist.
  • Proven experience in effectively managing stakeholders and internal clients.
  • Exceptional communication skills for collaborating with cross-functional teams and conveying technical information clearly.
  • Demonstrated capability in project management, including planning, tracking, and reporting.
  • Ability to lead and mentor team members to enhance their skills and productivity.
  • Proficiency in conflict resolution and problem-solving, particularly in high-pressure situations.
  • Strong leadership skills to guide the team and drive results.
  • Expertise in prioritising tasks and resources effectively.
  • Knowledge of ITIL and IT service management processes.
  • Proficiency in web development using Python-based frameworks like Django or Flask.
  • Knowledge of front-end technologies (React, HTML, CSS, JavaScript/Typescript) and their integration with Python-based backends.
  • Experience in building RESTful APIs.
  • Strong understanding of database concepts and experience with SQL and NoSQL databases (e.g., PostgreSQL, MongoDB).
  • Version control system experience (TFS/GitHub/GitLab).
  • Unit/integration/system testing.
  • Strong knowledge of principles and patterns (SOLID, dependency injection), quality standards.
  • Knowledge of IT infrastructure (hardware, databases, operating systems, local area networks, cloud services, etc.) and IT applications and service processes used within the organisation.
  • Demonstrable excellent communication skills.
  • Experience in Agile processes, including estimation and planning.
  • Cloud-based solution design using containerisation and serverless architectures in AWS and/or Azure (Cloud Formation/ARM).
  • Experience working across layers of a complex application such as data layers, orchestration layers, and user interface, including ability to write and optimise SQL queries.
  • Containerisation (Docker, Kubernetes, etc.).
  • Demonstrated capability in CI/CD tools to manage workflows/pipelines.

Desirable:

  • Knowledge of charting libraries (HighCharts, D3.js, Recharts, Plotly, Altair)
  • Understand of mathematical optimisation concepts

What we offer

  • Be recognised for your contribution, your thinking and your hard work, and go home knowing you’ve helped the world progress.
  • An excellent base salary reflective of your skills and experience with annual incentive program.
  • Comprehensive medical benefits including subsidised private health insurance for employees and immediate family.
  • Attractive share ownership plan.
  • Extensive salary sacrifice & salary packaging options.
  • Career development & education assistance to further your technical or leadership ambitions.
  • Exclusive employee discounts (banking, accommodation, cars, retail and more).
  • Domestic relocation if required.

Every Voice Matters

At Rio Tinto, we particularly welcome and encourage applications from Aboriginal and Torres Strait Islander people, women, the LGBTI+ community, mature workers, people with disabilities and people from different cultural backgrounds.

Come and join us in this exciting journey as a member of the leadership team, where you be integral in establishing and executing on our strategy, building our team, implementing best practices and technology to meet our plans for scaling and value delivery.

Please note, in order to be successfully considered for this role you must complete all pre-screening questions.

Job has expired