Senior Developer, Perth
Rio Tinto
Senior Developer, Perth – Australia
Rio Tinto is building a world-class digital product 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 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 are looking for a highly skilled and versatile Senior Developer with expertise in IT support and application development. This role will be responsible for providing advanced technical support to resolve complex IT issues while also contributing to the development, enhancement, and maintenance of critical applications for our organisation. A deep understanding of both IT infrastructure and software development is required.
Reporting to our Lead Developer within our future scheduling fusion team, The Senior Developer will maintain application support processes and ensure that all support requests are handled according to established procedures. This role will utilise application management software and tools to investigate issues, collect performance statistics, and generate reports.
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.
- Designing, coding, verifying, testing, documenting, amending and refactoring complex programs/scripts and integration software services.
- Contributing to the selection of software development methods, tools, and techniques.
- Applying agreed-upon standards and tools to achieve well-engineered outcomes.
- Participating in reviews of own work and leading reviews of colleagues' work.
- Ensuring best-in-class processes and techniques to develop, deploy and support user interfaces, applications and platform solutions for the business.
- Utilise the latest available technologies to flexibly manage and scale data pipelines and analytics models.
- Design, develop, maintain software applications and tools aligned with the organisation's needs.
- Collaborating with cross-functional teams to gather and analyse requirements, translating them into technical solutions.
- Writing clean, efficient, and maintainable code, adhering to coding standards and best practices.
- Implementing software testing strategies, including unit testing and integration testing, to ensure application reliability.
- Troubleshooting and debugging application issues, providing timely resolutions and improvements.
- Collaborating with cross-functional teams, including developers, system administrators, and business analysts, to solve complex problems and implement solutions.
- Sharing knowledge and expertise with team members through training sessions, documentation, and mentorship.
- Staying up to date with industry trends and emerging technologies relevant to IT support and application development.
Application Support
Delivering management, technical, administrative services to support and maintain live applications.
- Acting as the highest level of support escalation, handling complex IT issues and incidents that require in-depth knowledge and expertise.
- Investigating, diagnosing, and resolving critical system, network, and application issues to ensure minimal downtime and optimal performance.
- Collaborating with Tier 1 and Tier 2 support teams to provide guidance and mentorship in resolving escalated cases.
- Developing and maintaining detailed documentation of issue resolution procedures and best practices.
- Maintaining application support processes and ensuring that all support requests are handled according to agreed procedures.
- Using application management software and tools to investigate issues, collect performance statistics, and create reports.
- Investigating, identifying, and resolving issues, incidents, and problems related to applications within a broad area of competence.
- Carrying out non-routine maintenance tasks related to applications within a broad area of competence.
- Monitoring escalated requests for application support, taking action to avoid or minimise delays, and prioritising requests in accordance with agreed criteria and organisational needs.
- Providing 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
- Bachelor’s degree level or holds a relevant professional qualification, such as Bachelor of IT, Computer Science, Software Engineering, etc.
- Relevant experience as a software engineer and support specialist.
- 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 organization.
- Demonstrable excellent communication skills.
- Experience in Agile processes, including estimation and planning.
- Cloud-based solution design using containerization 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.
- Containerization (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.