Senior Software Engineer – Backend Platform
We’re building something new within Evolution. This is not an iteration on an existing product or a role focused on maintaining established systems. It is a chance to help define a new platform from first principles, using modern backend technologies to solve hard engineering problems under real production constraints. The system we’re building will operate across regions and process thousands of real-money transactions per second with strict consistency guarantees. Low latency, correctness, performance, and security are not goals we optimise for later. They are design constraints from day one. We are looking for senior engineers who want to work close to the core of the platform: backend services, event-driven systems, databases, production infrastructure, and performance-critical product flows.
- Build and evolve backend services and platform components using Java and Spring Boot
- Design APIs, data models, transaction flows, internal tools, and product-facing systems
- Design and build Kafka-based event-driven services and high-throughput transaction flows
- Design event flows with careful attention to ordering, idempotency, retries, failure handling, and data consistency
- Build systems using PostgreSQL where performance, correctness, and data integrity matter
- Deploy and operate backend services in Kubernetes-based production environments
- Drive technical decisions around consistency, latency, scalability, reliability, and security
- Make informed trade-offs between correctness, performance, complexity, and long-term maintainability
- Identify bottlenecks and continuously improve throughput, latency, observability, and system quality
- Own critical systems end-to-end, from design and implementation to production behaviour
- Strengthen engineering quality through code reviews, design discussions, and knowledge sharing
- Strong computer science fundamentals (required)
- Substantial experience building reliable, observable, high-performance backend systems (required)
- Comfortable working with distributed systems, databases, and production services (required)
- Can reason clearly about correctness, concurrency, failure modes, performance, and system design (required)
- Understand scalability beyond infrastructure alone, including data modelling, consistency, caching, and concurrency control (required)
- Comfortable making architectural decisions with long-term consequences (required)
- Take ownership of problems and drive them to reliable outcomes (required)
- Want to work in a small team with high standards and direct technical feedback (required)
- Strong professional experience with Java and Spring Boot (required)
- Strong experience with Kafka or similar event-streaming/message-driven systems (required)
- Experience designing event flows with careful attention to ordering, idempotency, retries, failure handling, and data consistency (required)
- Strong understanding of PostgreSQL, relational database design, transactions, indexing, and query performance (required)
- Strong experience deploying, operating, or troubleshooting backend services in Kubernetes-based production environments (required)
- Experience designing backend systems for high-throughput, low-latency, business-critical workloads (required)
- Experience with distributed systems design, especially around consistency, partitioning, concurrency, and failure handling (required)
- Experience with transactional data modelling and correctness guarantees in financial, gaming, trading, payments, or other high-integrity domains (required)
- Experience with production observability, including metrics, tracing, structured logging, alerting, and performance analysis (required)
- Security-minded engineering, including authentication, authorisation, secrets handling, secure service communication, and defensive design (required)
- Clear communication and the ability to discuss technical trade-offs thoughtfully (required)
- Payments, fintech, gaming, trading, or other real-money transaction domains (nice-to-have)
- Multi-region system design with low-latency routing and strong data integrity guarantees (nice-to-have)
- Caching and data-access strategies under strict correctness constraints (nice-to-have)
- Infrastructure as code and automated delivery pipelines (nice-to-have)
- Load testing, capacity planning, and performance regression prevention (nice-to-have)
- Incident response and production reliability ownership (nice-to-have)
- Competitive pension, health and medical insurance
- 30 paid vacation days
- Fitness benefit (Friskvårdsbidrag)
- Professional growth
- Sport activities, parties, team buildings
