Associate, Developer (Backend)
Posting Date: 20 May 2025
Location: Sofia, BG
Company: EBRD
Requisition ID | 35718 |
Office Country | Bulgaria |
Office City | Sofia |
Division | Information Technology |
Contract Type | Fixed Term |
Contract Length | 3 years |
Posting End Date | 03/06/2025 |
Step into a high-impact role where Java mastery meets real-world complexity. You'll be building enterprise-grade, cloud-native applications using Java 17+, Spring Boot, and microservices architecture. Driving clean code, smart design, and performance at scale. From RESTful APIs to custom integrations and scalable data solutions, you’ll own the full development lifecycle and operate with real autonomy. If writing elegant, maintainable code and solving complex software problems are your strengths, this role will feel like home.
But it’s more than just code. You’ll lead on quality, through robust testing, TDD/BDD, and CI/CD automation, while also ensuring your solutions perform in production with security, observability, and resilience in mind. You’ll collaborate across architecture, DevOps, and cloud teams (Azure, Kubernetes, Docker) to deliver scalable systems that make a real difference. If you’re ready to take the reins and shape the future of enterprise Java applications, this is your moment.
Accountabilities & Responsibilities
Software Design and Development
• Enables the design, development, testing, and maintenance of high-quality software solutions, operating without supervision.
• Writes clear, maintainable, and well-documented code.
• Develops and maintains RESTful APIs and microservices, ensuring scalability and maintainability.
• Integrates third-party services and APIs.
• Implements data storage solutions (e.g., relational and NoSQL databases).
• Performs debugging and troubleshooting to resolve software issues.
Quality Assurance
• Responsible for code reviews, ensuring adherence to coding standards and best practices for Java development.
• Writes unit and integration tests using frameworks like JUnit and Mockito to ensure code quality.
• Manages complexity holistically by implementing automated testing frameworks and tools to ensure the reliability and performance of Java solutions.
• Follows test-driven development (TDD) and behaviour-driven development (BDD) practices where applicable.
• Ensures non-functional requirements such as performance, security, and scalability are met.
Operations, Maintenance, Support, and Documentation
• Participates in the deployment and release processes, ensuring smooth rollouts of new features.
• Monitors production systems, investigates issues, and provides timely resolutions.
• Maintains clear documentation of code and processes specific to Java, following established guidelines.
• Provides ongoing support and troubleshooting for Java solutions.
• Automates repetitive tasks and improves development workflows using scripting and DevOps practices.
Data and Architecture
• Develops and maintains RESTful APIs for Java solutions.
• Designs and implements custom connectors and integrations with external systems for Java.
• Assists in designing robust and scalable system architectures that align with organisational needs.
• Contributes to the design and implementation of data models and schemas for Java solutions.
• Evaluates and recommends best practices for integrating Java with external systems and third-party services.
Knowledge, Skills, Experience & Qualifications
• Educated to degree level or equivalent, with a qualification in an IT, engineering, or scientific discipline, desired.
• Extensive working experience in Java (Java 17 or later) and Spring Framework (Spring Boot, Spring MVC, Spring Data).
• Extensive working experience in developing and optimising RESTful APIs and microservices.
• Extensive working experience with containerisation (Docker, Kubernetes) and cloud-native application development.
• Confident working with relational databases (Azure SQL) and ORM frameworks like Hibernate.
• Confident working with messaging systems such as ActiveMQ or Azure Service Bus.
• A solid understanding of software development principles, with experience in system design and architecture.
• Extensive working experience in writing unit and integration tests using JUnit, Mockito, and test-driven development (TDD).
• Extensive working experience in implementing CI/CD pipelines for automated builds, testing, and deployments.
• Confident working with load testing and performance tuning for high-traffic applications.
• Extensive working experience in deploying and maintaining applications in cloud environments (Azure, AWS, or GCP).
• Extensive working experience of monitoring tools like Azure Monitor and Application Insights, and application logging strategies.
• Extensive working experience in documenting software design, system architecture, and API contracts using OpenAPI specification.
• Extensive working experience of microservices architecture, event-driven design, and distributed systems.
• Extensive working experience in application authentication protocols (OAuth 2.0, JWT), and security best practices.
• Confident to make architectural decisions considering scalability, reliability, and maintainability.
• Solid understanding of caching strategies (Hazelcast, Redis) and database performance tuning techniques.
• Self-starting, highly disciplined individual with strong analytical and critical thinking skills gained from hands on experience in response to technical requirements.
• Excellent written and verbal communication skills with the ability to communicate appropriate, concise, and accurate information to a wide variety of audiences both within and outside of the EBRD.
• Excellent people skills, in particular service orientation, organisational awareness and people empathy.
• Fluency in written and spoken English.
• Ability to operate sensitively and effectively in a multicultural environment.
What is it like to work at the EBRD?
Our agile and innovative approach is what makes life at the EBRD a unique experience! You will be part of a pioneering and diverse international organisation, and use your talents to make a real difference to people's lives and help shape the future of the regions we invest in.
The EBRD environment provides you with:
- Varied, stimulating and engaging work that gives you an opportunity to interact with a wide range of experts in the financial, political, public and private sectors across the regions we invest in;
- A working culture that embraces inclusion and celebrates diversity;
- An environment that places sustainability, equality and digital transformation at the heart of what we do.
Diversity is one of the Bank’s core values which are at the heart of everything it does. A diverse workforce with the right knowledge and skills enables connection with our clients, brings pioneering ideas, energy and innovation. The EBRD staff is characterised by its rich diversity of nationalities, cultures and opinions and we aim to sustain and build on this strength. As such, the EBRD seeks to ensure that everyone is treated with respect and given equal opportunities and works in an inclusive environment. The EBRD encourages all qualified candidates who are nationals of the EBRD member countries to apply regardless of their racial, ethnic, religious and cultural background, gender, sexual orientation or disabilities. We offer hybrid and flexible working arrangements and believe we operate at our best when collaborating 3 days a week in person (minimum).
Please note, that due to the high volume of applications received, we regret to inform you that we are unable to provide detailed feedback to candidates who have not been shortlisted (for further consideration).
Job Segment:
Testing, Cloud, Developer, Sustainability, Java, Technology, Energy