Back

Expires: 30.11.2026.

Senior Java Developer

Riga, Latvia

Apply now

Job description

About the Role

Banking Systems - Java and Spring Boot We are looking for a Senior Java Developer to build banking software using Java and Spring Boot.

You will develop secure backend services that process financial operations accurately and reliably.

Responsibilities

• Design, develop, and maintain banking services using Java and Spring Boot.

• Build secure REST APIs and integrations with internal platforms and external financial systems.

• Implement transactional workflows using Spring transaction management and relational databases.

• Write and optimize SQL queries, ensuring correct transaction boundaries, isolation, locking, and rollback behavior.

• Handle concurrency, deadlocks, retries, and duplicate requests safely.

• Implement authentication, authorization, input validation, secrets management, and audit trails without exposing sensitive data.

• Apply OWASP secure coding practices and resolve findings from security scans and penetration tests.

• Write automated tests covering monetary calculations, transaction failures, concurrent operations, access controls, and recovery scenarios.

• Collaborate with product, QA, and DevOps teams, improve performance and reliability, and mentor other developers.

About you

• Strong commercial experience with Java, Spring Boot, Spring Security, and Spring Data.

• Strong SQL skills and experience with relational databases such as PostgreSQL or MySQL.

• Solid understanding of ACID transactions, isolation levels, optimistic and pessimistic locking, and deadlock handling.

• Practical knowledge of Spring transaction management, including @Transactional, propagation, rollback rules, and proxy-related limitations.

• Experience with JPA/Hibernate, parameterized queries, and database performance optimization.

• Experience handling monetary values using BigDecimal or integer minor units, explicit currency precision, and defined rounding rules.

• Knowledge of the OWASP Top 10 and API Security Top 10, including injection prevention and object-level authorization.

• Experience with OAuth 2.0 and OpenID Connect, secure token validation, and least-privilege access controls.

• Understanding of TLS, encryption at rest, secrets management, and secure handling of sensitive data.

• Experience with Git, automated testing, CI/CD, and dependency vulnerability management.

• Ability to own complex features and communicate technical decisions clearly.

NICE TO HAVE:

• Background in fintech, payments, or financial services.

• Familiarity with banking platforms, core banking systems, and their integration patterns.

• Experience with financial ledger systems. Familiarity with OWASP ASVS and security audit processes.

• Experience with Kafka or RabbitMQ, idempotent consumers, transactional outbox patterns, and reconciliation.

• Experience designing reliable distributed workflows and resolving penetration test findings.

We offer

•  Competitive salary, depending on experience and qualifications.

•  Health insurance.

•  Free parking.

• Professional and collaborative environment in an international fintech company.

• Opportunities for professional development and career growth.

RECRUITMENT PROCESS

We will contact only candidates who have been shortlisted for an interview.

We’d love to meet you and tell you more about life at FINCI.

[email protected]

Join our team of action takers

  • Our strong team of great individuals are here to help you.
  • Join the team of dreamers, believers and achievers.
Learn more

Get your tailored business account

Please fill out this short form and your account manager will start preparing a business account tailored to your needs.

  • 1
  • 2
* required fields
Select your monthly turnover up to*
* required fields

Thank you. Your details were submitted successfully.

A dedicated account manager will review your request and get in touch to discuss next steps. Meanwhile, to kickstart the business onboarding process, ensure that someone authorized to act on behalf of your company opens a personal account using the FINCI app (iOS or Android). Simply follow the on-screen instructions, which only take a couple of minutes.

Something went wrong. Please try again.

Business account opening in 3 simple steps.

  1. STEP 1

    Create a free personal account via the app.

  2. STEP 2

    Log in to the online bank via desktop

  3. STEP 3

    Proceed with business account opening

Scan QR code
to start

Business account opening in 3 simple steps.

  1. STEP 1

    Create a free personal account via the app.

  2. STEP 2

    Log in to the online bank via desktop

  3. STEP 3

    Proceed with business account opening

Scan QR code
to start