We seek a strong Java developer to join a trading systems team at Bank of Montreal, Capital Markets. You will program in core Java, building and enhancing the trading platform and its supporting systems. You will work closely with developers in North America and Poland and interact with other teams, including sales/marketing/quants/operations, to implement new trading features and improve the existing system.
Read on if you want to work with large, low-latency trading systems in Java. We’re looking for top-notch developers who want to work with smart and capable people.
A successful candidate will have considerable experience in software development and the right mix of technical knowledge and soft skills. You must be very strong in Java and programming in general. You must also be curious, open-minded, and desire to learn new things. English proficiency is a must.
This is not a role for someone who likes integrating different external systems, frameworks, and libraries, or shuffling data between external APIs and databases. The system is mostly built in core Java. There are very few external dependencies. You must be great at coding to succeed in this role.
This is a fully remote senior backend Java development role for a developer in Poland. You will be working through a Polish company that will provide the support and administrative assistance to make you successful in the role. We are looking for people to join the team long-term. This is not a fixed-scope or fixed-term project.
To ensure efficient onboarding, you’ll work in sync with the American team during US Eastern business hours for the first two months. Working this way maximizes your time overlap for answering questions, which means you can learn quickly. That means working until 21:00 CET. After that, your schedule will gradually shift closer to standard Polish business hours.
You will work on a large-scale trading system with a professional team of really smart developers. Your peers will be intelligent, motivated, and capable and expect similar from you. You’ll work on mature live systems processing millions of daily transactions at an established financial institution.
This is not a one-off project for an outsourcing firm. The goal is to build a team in Poland that will work alongside the North American team on the trading systems at Bank of Montreal. We are looking for people who want to join a team for the long term.
The position is 100% fully remote, working from Poland. You have flexibility in managing your time, which will increase after onboarding.
You will be compensated generously and will have the ability to take ample time off from the project.
The interviews will include conversations about algorithm design and verbal programming exercises. There are no trick questions. You do need to demonstrate an in-depth understanding of common data structures and can understand and implement non-trivial algorithms. You’ll also need to be able to discuss tradeoffs and the algorithmic complexity of a solution.
There will be verbal algorithm design problems and live coding during the interviews.
There are no take-home assignments.
All successful candidates must pass a background check required for contractors of a financial institution.