Role Overview
As a Software Architect, you will define the technical vision and lead the design of our high-performance, low-latency infrastructure.
You will be responsible for the end-to-end architecture of the event-driven microservice ecosystem.
You will guide engineering teams through complex technical decisions and drive the modernization of legacy systems into scalable architectures.
Key Responsibilities
- Design end-to-end architecture for distributed systems requiring low latency and high availability
- Define and implement microservice and event-driven architecture patterns across the platform
- Architect communication protocols based on Kafka and Redis, optimizing for throughput and reliability
- Lead technical debt management and legacy modernization efforts
- Participate in Agile/Scrum ceremonies including sprint planning, backlog refinement, and architectural decision-making
- Establish a culture of code review, Architectural Decision Records (ADRs), and comprehensive technical documentation
- Define crash recovery, data consistency, and fault tolerance strategies for mission-critical systems
Technical Requirements
Languages : Java 17+ (preferably Java 21), OOP, Design Patterns, SOLID principles
Frameworks : Spring Framework, Spring Boot 3+
Messaging : Apache Kafka (partitioning, consumer groups, exactly-once semantics)
Caching : Redis (clustering, pub/sub, data structures, TTL strategies)
Databases : MSSQL Server, PostgreSQL, query optimization, indexing
Architecture : Microservices, Event-Driven Architecture, CQRS, Domain-Driven Design
Protocols : gRPC, REST API, WebSocket
DevOps : Docker, Kubernetes, CI/CD pipelines
Methodology : Agile / Scrum, sprint planning, backlog management
Qualifications
- Bachelor’s degree in Computer Science, Software Engineering or a related field or equivalent practical experience
- Extensive professional software development experience with architectural responsibilities- Proven production experience in the Java ecosystem
- Experience designing and operating low-latency, high-availability systems in production environments
- Deep understanding of distributed system design and event sourcing
- Advanced proficiency in performance tuning and data modeling for database systems
- Experience with Agile/Scrum methodologies and technical leadership
- Excellent analytical thinking, problem-solving and communication skills
Nice to Have
- Familiarity with capital markets or regulated financial systems is a plus
- Knowledge of SPK regulatory framework and BIST operations
- Hands-on experience with crash recovery and data consistency strategies
- JVM performance optimization expertise (GC tuning, off-heap memory, low-latency patterns)
We evaluate all applications based on skills and qualifications and do not discriminate on any protected characteristic.