Java
Back End
kdb+

Java kdb+ Engineer

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 Canadian Bank 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.

Full-time, B2B

Form of cooperation

Remote

Work mode

35000-41000, B2B

Salary

What you will do

About project

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 Canadian Bank, 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.

Why Join Us?

  • Be part of the core world-class team of developers in North America and Europe who are 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.

What we offer

  • 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.

What you need

Responsibilities

  • 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 data efficiently and allow further analysis.
  • 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 record, 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.

Must have

  • 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.

Nice to have

  • 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

We are waiting for your CV, which will help us learn more about your experience and skills. Become part of our team and develop your career in an inspiring atmosphere.

Recruitment Process

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry’s standard dummy text ever since the 1500s.

1. Application

Submit your CV and cover letter through our website or directly to the provided email address.

3. Phone Interview

We will have a brief phone interview to get to know you better, verify your experience, and discuss your expectations.

5. Offer and Decision

If you pass all stages positively, we will present you with a job offer and the details of the collaboration.

2. Initial Selection

Our HR team will carefully review your application documents and contact selected candidates.

4. Recruitment Meeting

Meet with the client team, where we will conduct a technical or practical interview to assess your skills in the context of the required competencies.

1. Application

Submit your CV and cover letter through our website or directly to the provided email address.

2. Initial Selection

Our HR team will carefully review your application documents and contact selected candidates.

3. Phone Interview

We will have a brief phone interview to get to know you better, verify your experience, and discuss your expectations.

4. Recruitment Meeting

Meet with the client team, where we will conduct a technical or practical interview to assess your skills in the context of the required competencies.

5. Offer and Decision

If you pass all stages positively, we will present you with a job offer and the details of the collaboration.

Benefits

Flexible Working Hours

We offer the possibility to adjust working hours to your individual needs, allowing for a better work-life balance.

Healthcare

We offer the possibility to adjust working hours to your individual needs, allowing for a better work-life balance.

Multisport

We offer a multisport card, allowing you to take care of your physical fitness with access to a wide range of sports facilities.

Check Out More Job Openings

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry’s standard dummy text ever since the 1500s.