Senior Software Engineer
Location Address: WFH – Office: Toronto
Contract Duration: 4 Months
Number of Positions: 1
Scheduled Hours: 9-5 (7.5 Hours/Day)
Extension: Yes, depending on performance/project
Story Behind the Need:
• Business group: Data Office Canadian Banking
The team is looking for someone with a software background who will work with other data engineers, DevOps engineers, and other development/engineering teams in the bank to develop the technical solutions for enterprise data initiatives. The role of the Senior Software Engineer operates within the Product Engineering & Delivery team. This valuable member of the team will participate in creating scalable automated systems for re-usable data assets, pipelines and services for the broad enterprise use.
Candidate Value Proposition:
• The successful candidate will have a great opportunity to work within the forefront of the bank and build data management tools that can be used across the bank. The role will also provide them with the experience of working with the latest technology such as Scala, Spark, Airflow, etc.
Typical Day in Role:
• Design and implement services and components to enable enterprise-wide use of data
• Automate and re-factor services code.
• Work closely with software/data engineers and DevOps engineers to build data management capabilities that drive real business outcomes
• Participate in planning and retrospective sessions, attend stand-ups, etc.
Candidate Requirements/Must-Have skills:
1. 5+ years’ experience in building enterprise software
2. 5+ years’ experience with object-oriented programming languages (e.g. Scala, Python,
4. 3+ years’ experience working with big data technologies (e.g. Spark, Hive)
5. 3+ years’ experience working with relational databases (e.g. MySQL, PostgreSQL)
6. Understanding of data management disciplines such as data quality and data profiling
7. Understanding of CI/CD (e.g. Jenkins, Git, Bitbucket, other)
8. Experience in software engineering best practices such as code reviews, testing frameworks, maintainability, and readability
• Knowledge and understanding of container and micro-services technologies (e.g.
Docker, Kubernetes) is an asset
• Previous experience working in a technology company or financial institution
• Experience with performance tuning data pipelines
• Proven strong analytical design, troubleshooting and problem solving skills
• Strong communication skills, both written and spoken
• Team player, self-starter, fast learner
• Attention to details, high standards for quality
• Ability to write and maintain clear documentation
• Bachelor’s degree in Computer Science, Software Engineering, Mathematics, or similar discipline
Candidate Review & Selection
• 1st round – hiring manager (30-minute interview)
• 2nd round – Panel with hiring manager & colleague (1 hour interview)