About the RoleThe 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.
QualificationsRequired- 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 CompetenciesCore 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
Location700 9th Ave SW Suite 2000, Calgary, Alberta, T2P 3V4, Canada
Job DetailsRequisition 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 InformationCompensation is competitive and commensurate with experience.