We’re looking for an experienced Java engineer who will build and maintain systems that populate large amounts of data in kdb+ databases.
-
Sr. Java backend engineer, with 2+ years of experience working with kdb+.
-
Fully remote for Bank of Montreal, from Poland.
-
35,000-41,000 zł per month, B2B.
-
Part of the core team (not legacy or outsourced team B) working on large scale equity trading systems.
Are you a passionate Java developer who thrives on solving complex problems in low-latency, high-throughput trading systems? Join the Capital Markets team at Bank of Montreal where you will be responsible for feeding massive amounts of order, trade, pricing, and security data into the kdb+ database, quickly and reliably.
A successful candidate will have 2+ years of hands-on professional kdb+ development experience in Java. They will be a mature developer who is 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.
-
Be part of the core world-class team of developers across North America and Europe that is building equity trading systems (not legacy, bug fixing, maintenance or outsourced team B)
-
Enjoy a long-term, fully remote role with flexible hours after onboarding.
-
Greenfield project to build new data storage systems
-
Core Java (Java 17 & 21) with minimal external dependencies.
-
Work on a large-scale, low-latency trading system processing millions of daily transactions.
This is a fully remote role for a developer based in Poland. You will be working directly with the team at Bank of Montreal, 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.
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 shift to more normal Polish business hours.
Only open to residents of Poland. Polish citizens, as well as legal residents with permission to work in Poland are welcome.
-
Design, develop, and maintain software that will store large amounts of data in kdb+ databases, in batches, and from live data streams.
-
Shape the API and architecture that will be used throughout the wider team for storing trading data for later analysis.
-
Design schemas that will store the data efficiently.
-
Work with the database administrator to ensure that the kdb+ instances are configured to provide the performance that your application requires.
-
Collaborate with data analysts and quants who will use the data that you write, to ensure that it is in a usable form.
-
Write clean, maintainable code in Java, with focus on performance and usability.
-
Create thorough test cases to ensure software stability and reliability.
-
Support production issues, including root-cause analysis and diagnosis.
-
Work that matters in the financial domain: Work on a live trading system at an established financial institution, processing millions of transactions daily.
-
Professional growth: Collaborate with smart, highly capable developers in a supportive and challenging environment.
-
Direct collaboration: You will work directly with the Bank of Montreal team in North America and in Poland.
-
1st-tier work: This is not a technical support or legacy maintenance role. The system is functional and is actively being built and you will take part in updating it. The people who built the system are still part of the team.
-
Long-term commitment: This is not a fixed-scope or fixed-term outsourcing role; we value people who want to grow and contribute long-term.
-
Flexibility & remote work: Fully remote position based in Poland with increasing schedule flexibility post-onboarding.
-
Competitive Compensation: Above-average pay and ample time-off options.
-
Strong understanding of programming concepts, including algorithms, complexity, and data structures.
-
Professional experience with creating Java programs that write large amounts of data to kdb+ databases.
-
Experience with the Q query language.
-
Open mind, curiosity, and a strong desire to learn new technologies and business domains.
-
Ability to clearly explain non-trivial systems and algorithms.
-
Ability to follow and understand technical conversations.
-
Humility to ask questions where necessary.
-
Ability to align your working schedule to US Eastern business hours during onboarding.
-
Experience with financial markets and trading systems.
-
Knowledge of AWS systems.
-
Experience working remotely with North American firms.
-
Strong collaboration and teamwork skills.
-
Familiarity with distributed systems or concurrent programming.
-
A computer science degree from a top Polish school.
-
Submit your CV.
-
Answer a few written questions and a short programming exercise which you can do at your own pace.
-
Participate in a three-step interview process:
-
Discuss your experience and skills.
-
Solve verbal algorithm problems (focus on clarity and understanding).
-
Tackle live coding challenges (no trick questions).
No take-home assignments – we respect your time.
Successful candidates will need to pass a standard background check.