Senior Java/Kotlin Developer for Remote Banking Systems
In this remote position, you'll work with cutting-edge technologies to develop sophisticated banking applications that drive the digital transformation of financial services. This role offers the opportunity to make significant contributions to architecture decisions while working in a collaborative, forward-thinking environment.
Key Responsibilities
- Design and develop high-performance, scalable banking applications using Java 17+ or Kotlin 1.9+.
- Create and maintain microservices within a distributed cloud architecture using Spring Boot 3.x and Spring Cloud.
- Implement containerized solutions with Docker and orchestration platforms like Kubernetes or OpenShift.
- Build efficient database solutions utilizing both SQL (PostgreSQL, Oracle) and NoSQL (MongoDB, Elasticsearch) technologies.
- Develop and integrate with message broker systems such as Kafka or RabbitMQ for event-driven architectures.
- Implement reactive programming patterns using Project Reactor or RxJava for responsive applications.
- Optimize application performance using distributed caching solutions like Redis or Hazelcast.
- Configure and improve CI/CD pipelines (GitLab CI, Jenkins) to ensure smooth delivery processes.
- Set up and fine-tune monitoring systems (Prometheus, Grafana) for application observability.
- Collaborate with cross-functional teams including Data Science, DevOps, and Product Management.
- Contribute to technical discussions and architectural decisions for new banking features.
- Participate in code reviews and knowledge sharing activities.
Required Skills & Experience
- 3+ years of hands-on experience with Java 11+ or Kotlin, with solid understanding of JVM optimization.
- 3+ years working with Spring Framework and at least 1 year with Spring Boot 2.x or 3.x.
- Proven experience building and maintaining microservice-based systems using Spring Cloud or similar frameworks.
- Practical knowledge of containerization with Docker and container orchestration (Kubernetes, OpenShift).
- Experience with at least 3 of the following technologies:
- NoSQL databases (MongoDB, Elasticsearch, Cassandra).
- SQL databases (PostgreSQL, Oracle, MySQL).
- Message brokers (Apache Kafka, RabbitMQ, ActiveMQ).
- Reactive programming (Project Reactor, RxJava).
- Distributed caching (Redis, Hazelcast).
- CI/CD tools configuration (GitLab CI, Jenkins, GitHub Actions).
- Monitoring solutions (Prometheus, Grafana, Zabbix).
- Understanding of secure coding practices for financial applications.
- Experience with test-driven development and automated testing strategies.
- Strong troubleshooting and debugging skills in distributed environments.
- Excellent written and verbal communication abilities.
