Job Description
Posted Wednesday 3 June 2026 at 10:00
BCA Research is the leading independent provider of global investment research. Since 1949, BCA Research's mission has been to shape the level of conviction with which our clients make investment decisions, through the delivery of leading-edge analysis and forecasts of all the major asset classes and economies. The firm maintains a head office in Montreal, with local offices in London, New York, Hong Kong, Sydney, Singapore and Shanghai.
Downtown Montreal – Hybrid
Full-time – Permanent
About the team
You’lljoin a small, senior, AI-augmented data engineering team at BCA Research. We build internal tools, automate manual workflows, and support the data pipelines that power a financial-research product real subscribers rely on. We move quickly because Claude Code, Codex, and similar tools are first-class members of our workflow - but we still own every line of code, review every PR carefully, and talk through tricky problems together on camera.
Python Developer
We’re hiring a Python Developer to grow with the team.
Responsibilities
- Deliver JIRA tickets end-to-end: Python tooling, data workflow automation, pipeline support, bug fixes, and reliability improvements
- Use AI coding assistants daily, review their output critically, and keep the quality bar high
- Write clean, maintainable Python with clear structure, type hints, appropriate tests, and readable documentation
- Build automation that reduces manual work, improves data quality, and makes internal users more effective
- Work with SQL and data stores to inspect, transform, validate, and troubleshoot data
- Contribute to production data pipelines under the guidance of senior engineers and gradually take on larger areas of ownership
- Debug unfamiliar systems using logs, queries, tests, and careful investigation
- Collaborate with developers, data specialists, researchers, and project managers to turn operational problems into reliable software
- Read relevant technical documentation before changing code; update documentation before opening the PR
- Review teammates' PRs and take feedback well on your own
Required
- 3-5 years of production engineering experience, with shipped work you can discuss clearly
- Strong Python development skills, including experience building tools, scripts, services, or data workflows
- Hands-on experience with AI coding assistants such as Claude Code, Cursor, Copilot, Codex, Cline, or similar
- Comfortable with SQL for querying, debugging, validating, and transforming data
- Familiarity with Git, command-line workflows, pull requests, and working in a shared codebase
- Experience writing automated tests and debugging production or production-like issues
- Ability to automate tedious or error-prone manual processes and understand the system underneath them
- Adaptable across changing priorities, including internal tooling, pipeline support, ad-hoc data work, and platform improvements
- Clear written and verbal communication with both technical and non-technical teammates
- Excellent spoken and written English as you will collaborate with colleagues in Canada, US and globally.
- Professional level of French spoken and written.
Nice to have
- Experience with Microsoft Fabric, Azure, or cloud-based data platforms
- Exposure to MongoDB or other document databases
- Experience with data pipeline reliability, DataOps, or ELT/ETL workflows
- Familiarity with financial data, market data, or vendor data feeds
- Experience working in a monorepo
- Experience with Python packaging and dependency tools such as uv
- Performance and reliability instincts - observability, retries, validation, failure modes, and data quality checks
How we work
- AI-first, human-owned. Every PR has a person's name and judgement behind it.
- Documentation lives in the repo and is updated with the code, not after.
- We value practical automation that removes real operational friction.
- PR reviews are real reviews; automated agents and humans both have to be satisfied.
- We work closely with internal users and iterate based on how tools are actually used.
- Camera-on, engaged in collaboration when the team is on a call.
*Please note that the candidate must be located in the greater Montreal area. Candidate must be available full-time as this is a permanent role within the tech team.
We embrace and support each other without labels to make BCA Research a phenomenal and progressive place to thrive. We offer a competitive compensation package and benefits. Flexibility, trust and responsibility for a balance between wellness and high performance. Professional development, Recognition and rewards and a team spirit, support and sense of belonging to the company’s goals and plans.
Join us and be part of a diverse team that shapes the future of investment insights.
BCA Research provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, colour, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state, or local laws.
#J-18808-Ljbffr