Software Engineer, Subsurface Applications (Principal - Advisor) Landmark
Calgary, AB, CA, T2P 3V4
We are looking for the right people — people who want to innovate, achieve, grow and lead. We attract and retain the best talent by investing in our employees and empowering them to develop themselves and their careers. Experience the challenges, rewards and opportunity of working for one of the world’s largest providers of products and services to the global energy industry.
About Landmark
Landmark, a Halliburton business line, provides the industry’s most comprehensive suite of digital solutions for exploration, drilling, and production optimization. Its software and data platforms empower customers to model subsurface assets, manage drilling risk, and accelerate decision-making through cloud, AI, and advanced analytics.
About the Role
The Principal Java Software Engineer designs and delivers complex engineering software applications supporting Landmark’s subsurface portfolio. This position contributes throughout the software development lifecycle, including technical design, core Java development, desktop application development, automated testing, troubleshooting, security remediation, and technical documentation.
Working under broad direction, the Principal Java Software Engineer independently solves complex technical problems and delivers significant software capabilities. The position collaborates with software engineers, quality professionals, cybersecurity specialists, product stakeholders, and subsurface-domain experts to improve application quality, security, reliability, maintainability, and performance.
Key Responsibilities
- Design, develop, test, and maintain complex Java-based engineering software supporting scientific and subsurface workflows.
- Develop and enhance desktop application capabilities that translate technical and business requirements into dependable user solutions.
- Create automated regression-testing strategies that improve product quality, reliability, and release confidence.
- Troubleshoot complex application, performance, integration, and software-quality issues, identify root causes, and implement effective solutions.
- Apply secure coding practices throughout the development lifecycle and implement controls that reduce common software vulnerabilities.
- Triage reported security issues, evaluate technical impact, and deliver appropriate software fixes and remediation.
- Improve software architecture, maintainability, performance, reliability, development processes, and engineering efficiency.
- Collaborate with software engineering, quality assurance, cybersecurity, product, and technical-domain teams to deliver dependable applications.
- Contribute to technical planning by estimating work, identifying dependencies, defining assignments, and supporting achievable delivery schedules.
- Create and maintain clear technical documentation covering software designs, application behavior, testing approaches, and implemented solutions.
- Apply sound software engineering judgment to work that influences operational efficiency, cost management, and business performance.
Qualifications
Required
- Undergraduate degree in Computer Science or a similar discipline.
- Minimum of seven years of related experience, including software development experience.
- Experience designing, coding, testing, troubleshooting, and documenting software applications.
- Experience contributing to large-scale or technically complex software projects.
- Experience developing or supporting automated testing, including automated regression testing.
- Knowledge of secure coding practices, common software vulnerabilities, security-issue triage, and software-remediation approaches.
Preferred
- Experience with core Java development, desktop application development, or both.
- Experience developing scientific, engineering, geoscience, subsurface, simulation, or similarly sophisticated technical software.
- Strong applied understanding of mathematics, including calculus, geometry, or statistics, and foundational knowledge of physics.
- Experience improving software architecture, maintainability, performance, reliability, or engineering-development processes.
- Experience working in an Agile or iterative product-development environment.
- Advanced degree in Computer Science, Software Engineering, or a related technical discipline.
Candidates who possess qualifications exceeding the minimum job requirements may be considered for higher-level positions based on experience, additional qualifications, demonstrated capabilities, and current business needs. Depending on education, experience, and skill level, candidates may be eligible for roles ranging from Principal Software Engineer, Subsurface Applications to Advisor Software Engineer, Subsurface Applications or Sr Advisor Software Engineer, Subsurface Applications
Core Competencies
Core Java | Java Desktop Applications | Scientific Software | Engineering Software | Subsurface Applications | Geoscience Software | Software Architecture | Secure Coding | Application Security | Vulnerability Remediation | Automated Testing | Regression Testing | Root-Cause Analysis | Performance Troubleshooting | Software Quality | Technical Design | Agile Development | Technical Documentation
Halliburton is an Equal Opportunity Employer. Employment decisions are made without regard to race, color, religion, disability, genetic information, pregnancy, citizenship, marital status, sex/gender, sexual preference/ orientation, gender identity, age, veteran status, national origin, or any other status protected by law or regulation.
Location
700 9th Ave SW Suite 2000, Calgary, Alberta, T2P 3V4, Canada
Job Details
Requisition Number: 211871
Experience Level: Experienced Hire
Job Family: Engineering/Science/Technology
Product Service Line: Landmark Software & Services
Full Time / Part Time: Full Time
Additional Locations for this position:
Compensation Information
Compensation is competitive and commensurate with experience.
Job Segment:
Testing, Cloud, Computer Science, Developer, Java, Technology