Senior Software Engineer - Java (m/f/x)
Uses AI coding assistants as pair-programmers but explicitly disallows unreviewed "vibe coding"; emphasizes pragmatic AI integration for tests and boilerplate.
About the Role
Senior Java software engineer to architect, build, and scale high-throughput, fault-tolerant backend systems for brokerage and robo-advisory platforms at a European fintech. The role emphasizes production-grade Java, concurrency, distributed transactions, strong security and testing practices, containerized deployments, and pragmatic use of AI tooling in a fully remote environment.
Job Description
Role
Senior Software Engineer (Java) responsible for architecting, building, and scaling core financial systems that power brokerage operations and robo-advisory platforms. The position focuses on high-throughput, fault-tolerant backend services, strong concurrency and performance, rigorous testing, and maintaining data integrity across distributed systems.
Key Responsibilities
- Design and maintain high-throughput, fault-tolerant backend services for brokerage and robo-trading engines.
- Write clean, highly concurrent, and well-tested code primarily in Java.
- Champion Test-Driven Development (TDD) and Behavior-Driven Development (BDD) to ensure reliability for financial software.
- Manage complex state and ensure data integrity across distributed architectures and transactional flows.
- Containerize applications and maintain local and deployment workflows using Docker.
- Collaborate asynchronously and synchronously in a fully remote, Agile team.
- Integrate AI coding assistants for boilerplate, test generation, and refactoring while maintaining strict architectural oversight (explicitly not endorsing unreviewed “vibe coding”).
Requirements
- Extensive, production-level experience with Java and the JVM ecosystem, with focus on performance, concurrency, and reliability.
- Strong expertise in secure coding practices, data encryption, OWASP principles, and secure API design.
- Deep commitment to TDD and BDD; experience writing comprehensive automated tests.
- Strong understanding of distributed systems transactions and techniques to preserve consistency and prevent race conditions.
- Experience with containerized environments (Docker) and familiarity with CI/CD pipelines.
- Comfortable working in distributed, agile teams and communicating technical decisions to non-technical stakeholders.
- Domain knowledge of financial markets, brokerage mechanics, and automated/robo-trading.
- Experience using AI tools as pair-programmers to increase productivity and test coverage.
Nice to have
- Experience with Ruby on Rails for legacy service maintenance or migration.
- Familiarity with Rust for low-latency components.
- Knowledge of European financial regulations (e.g., MiFID II).
- Experience with the FIX protocol for order routing.
- Kubernetes (K8s) experience and advanced CI/CD deployment knowledge.
- Familiarity with spec-driven development tooling.
Working conditions & benefits
- Full-time, permanent (40h/week), fully remote role.
- Thirty days of paid vacation.
- Attractive remuneration package and free choice of hardware.
- Individual learning budget and personal career development.
- Free access to the Whitebox wealth management product.
- Weekly manager one-on-ones, flat hierarchies, virtual get-togethers, and on-site team activities.
- Regular knowledge-sharing sessions, communities of practice, and internal engineering events.
Onboarding
- First week: orientation to company context, team introductions, and leadership meetings.
- First month: codebase exploration, understanding past design decisions, and mapping components.
- First quarter: full integration into the team, contributing to projects, and participating in engineering planning and principles.