Senior Software Developer
Save this job and keep your search organized
Create a free account to save jobs, create alerts and return to this listing from your dashboard.
Role
A Senior Software Developer, Subsurface Information Management is responsible for the end-to-end design, development, and release of high-performance platform services and APIs that enable advanced analytics, data science, business intelligence, and AI workflows for geoscience data, ensuring data accessibility across the Seequent platform and connected application ecosystem. This position requires advanced technical expertise, leadership in software architecture, and cross-functional collaboration to ensure high-quality, secure, and scalable solutions. The position also includes project management responsibilities, with accountability to balance technical execution with planning and stakeholder engagement. The Senior Software Developer addresses complex challenges, delivers quality solutions, and provides technical guidance and mentorship to team members.
Bentley Systems
Role
A Senior Software Developer, Subsurface Information Management is responsible for the end-to-end design, development, and release of high-performance platform services and APIs that enable advanced analytics, data science, business intelligence, and AI workflows for geoscience data, ensuring data accessibility across the Seequent platform and connected application ecosystem. This position requires advanced technical expertise, leadership in software architecture, and cross-functional collaboration to ensure high-quality, secure, and scalable solutions. The position also includes project management responsibilities, with accountability to balance technical execution with planning and stakeholder engagement. The Senior Software Developer addresses complex challenges, delivers quality solutions, and provides technical guidance and mentorship to team members.
Duties And Responsibilities
Software Design
- Design and architect complex software applications, components and web services with the ability to deliver best in class solutions that effectively navigate ambiguous requirements or processes.
- Use appropriate modelling techniques in line with agreed software design standards, guidelines, patterns, and methodologies.
- Independently produce and communicate multiple design views to address stakeholder concerns and meet both functional and non-functional requirements including security.
- Identify, evaluate, and recommend design alternatives and trade-offs.
- Model, simulate, or prototype proposed software behaviours to secure stakeholder approval and facilitate effective software construction.
- Review, verify, and enhance own designs against desired deliverables while being mindful with the specifications and lead reviews of others' designs.
- Responsible for enhancing the effectiveness of existing processes, products, and programs by applying research insights and integrating emerging technologies.
Software Development
- Design, code, verify, test, document, amend, and refactor complex programs/scripts and integration software services.
- Design, develop, publish, and support internal and external web APIs to provide a secure, scalable and consistent interface to geoscience data and services
- Develop and optimize data models to support transactional and analytical workloads, ensuring scalability, performance, and alignment with business requirements.
- Advocate for the selection of the software development methods, tools, and techniques.
- Ensure agreed standards and tools are used across the team to achieve well-engineered outcomes.
- Measure and monitor applications of project/team standards for software construction, including software security.
- Participate in reviews of own work and lead reviews of colleagues' work.
Release Management
- Plan and schedule releases in line with business requirements and objectives.
- Coordinate release activities across multiple teams and stakeholders. Manage the release lifecycle, ensuring timely and quality deliverables.
- Support the development and maintenance of CI/CD pipelines and observability tools to automate deployments and testing, ensuring reliability and speed.
- Ensure releases meet defined quality, security, and compliance standards.
- Communicate release plans, progress, and outcomes to stakeholders, focusing on effective change management.
- Lead post-release reviews and identify areas for improvement.
Project Management
- Define, document, and execute small projects or sub-projects.
- Work independently or with a small team, actively participating in all project phases.
- Apply appropriate project management methods and tools.
- Identify, assess, and manage risks effectively.
- Prepare realistic project plans (including scope, schedule, quality, risk, and