The Senior Software Engineer is responsible for the deployment and optimization of financial models used in mortgage pricing and analytics. The successful candidate will work closely with data scientists, ML engineers, and business stakeholders to productionize models, refactor codebases, and mentor junior team members. Expect to work across our AWS, Databricks, and traditional RDBMS stack, contributing to our CI/CD pipelines and playing a key role in the technical direction of our products — including LLM-based solutions and proprietary applications.
Main Accountabilities
- Productionizes machine learning and financial pricing models as part of end-to-end product delivery, ensuring robustness, scalability, and seamless integration into existing systems.
- Refactors and optimizes code to improve performance, readability, and long-term maintainability, while reducing technical debt and aligning with modern engineering standards.
- Leads code reviews and contributes to system design discussions, fostering a culture of high-quality code and guiding junior team members in best practices and architectural thinking.
- Owns and maintains CI/CD pipelines and testing frameworks, while serving as a strong advocate for unit testing and engineering best practices across the team.
- Collaborates closely with data scientists, data engineers, and ML engineers, while mentoring junior developers and interns to uphold high standards in software engineering best practices.
Requirements
Education, Skills and Experience
- BSc degree in Computer Science, Physics, Electrical Engineering or other STEM field
- 5 years of professional software development experience
- Strong proficiency in Python and solid understanding of object-oriented programming (OOP) principles
- Experience with AWS, Databricks, and relational databases will be considered an asset
- Solid understanding of software engineering best practices, including CI/CD workflows, version control, automated testing (unit and integration), code reviews, and design patterns
- Basic understanding of machine learning concepts
Competencies
- Excellent interpersonal skills with ability to communicate effectively at all levels
- Strong analytical and problem-solving capabilities
- Results-oriented mindset
- Effective time management with ability to multi-task and prioritize work