Java developer ( mid/senior )

About Us: We are a forward-thinking company working on cutting-edge projects in the AI and Kafka ecosystem. We are looking for a talented Mid-to-Senior Java Developer to join our team and help us tackle complex issues related to Kafka configuration, serialisation, and deserialisation.

This is an “open” call for recruits. We are always looking to expand and strengthen our team.

We for on development of in-house applications but also develop and customise systems and applications that are build for specific customers.

As a Java developer, you will be responsible for designing and implementing an event-driven architecture. This approach emphasises the use of asynchronous communication between different components of the system, allowing for greater scalability, flexibility, and responsiveness. You will work with technologies such as message queues, event buses, and stream processing to build robust and efficient applications that can handle high volumes of data and events. Strong knowledge of Java, distributed systems, and event-driven design patterns is essential for this role.

We are actively integrating and building advanced AI solutions that not only enhance our own offerings but also significantly contribute to the solutions we provide to our valued customers. As a reputable Microsoft partner, we are dedicated to implementing and integrating cutting-edge technologies such as Azure AI Foundry and Open AI solutions, while also exploring and utilising a range of other innovative models and frameworks that are available in the market. Our ideal candidate would possess experience in building and deploying solutions using Azure AI Foundry, enabling them to effectively contribute to our ongoing projects and initiatives in this exciting and rapidly evolving field of artificial intelligence.

Responsibilities:

Develop and maintain Java applications using Spring Boot.
Configure and manage Kafka producers and consumers.
Troubleshoot and resolve issues related to Kafka serialisation and deserialisation.
Implement and manage error handling and retry mechanisms for Kafka consumers.
Collaborate with cross-functional teams to design and implement new features.
Write clean, maintainable, and efficient code.
Participate in code reviews and provide constructive feedback.
Ensure the performance, quality, and responsiveness of applications.


Required Knowledge and Experience:


Java: Strong proficiency in Java, with a good understanding of its ecosystems.
Spring Boot: Extensive experience with Spring Boot and related technologies.
Kafka: In-depth knowledge of Apache Kafka, including producer and consumer configuration, serialisation, and deserialisation.
Error Handling: Experience with Kafka error handling, including the use of custom error handlers.
Retry Mechanisms: Familiarity with retry mechanisms and backoff policies in Kafka.
JSON: Proficiency in working with JSON and Avro, including serialisation and deserialisation using libraries like Jackson.
Gradle: Experience with Gradle for project build and dependency management.
Logging: Strong experience with logging frameworks such as SLF4J and Logback.
Micrometer: Knowledge of Micrometer for application metrics and monitoring.
Unit Testing: Experience with unit testing frameworks such as JUnit and Mockito.
Version Control: Proficiency with Git and GitHub for version control.


Preferred Qualifications:

  • Cloud Platforms: Experience with cloud platforms such as AWS, Azure, or GCP. Azure is a must.
  • Docker: Familiarity with Docker for containerisation.
  • CI/CD: Experience with continuous integration and continuous deployment (CI/CD) pipelines.
  • Agile Methodologies: Experience working in Agile/Scrum development environments.
  • Soft Skills:
    • Strong problem-solving skills and attention to detail.
    • Excellent communication and teamwork skills.
    • Ability to work independently and manage time effectively.
    • Eagerness to learn new technologies and continuously improve.
  • Benefits:
    • Competitive salary and benefits package.
    • Flexible working hours and remote work options.
    • Opportunities for professional growth and development.
    • Collaborative and inclusive work environment.


How to Apply: Please send your resume and a cover letter detailing your relevant experience to [[email protected]]. We look forward to hearing from you!

Senior .NET Developer

Are you a Senior .NET developer looking for a new challenge? We’ve got just the role for you! We’re seeking an experienced Senior .NET developer to lead the development of functional .NET applications and backend services. But that’s not all – you’ll also be taking on a managerial and mentoring role, overseeing the functions of the scrum delivery squad.

As a member of our development team, you’ll be working on exciting projects for a client in the banking sector, developing backend services for a mobile application. We also have some internal projects in development that you can take part of. You’ll be responsible for analysing system requirements, delegating development tasks, and developing technical specifications. But don’t worry, you’ll still have plenty of opportunities to get your hands dirty with .NET application coding, system debugging, and code reviewing.

In this role, you’ll be working with a modern tech stack, including .NET, Kafka, and OpenShift/Kubernetes, Azure DevOps, SQL Server. And the best part? You’ll have the option to work in a hybrid mode, with an office being set up and your choice of equipment – laptop, screen, headphones – provided.

Responsibilities:

  • Collaborating with technology managers to determine application and website requirements
  • Upgrading existing .NET websites and applications
  • Writing scalable code for .NET software applications
  • Writing unit tests and automations
  • Reviewing and debugging .NET applications
  • Providing support for junior developers
  • Training and mentoring junior staff

Qualifications:

  • Previous experience as a .NET developer
  • High adoption of scrum methodology in practice
  • Excellent problem-solving skills
  • Good verbal and written communication skills
  • Professional use of English language

But wait, there’s more! We value continuous learning and development, which is why we offer a training/self-improvement budget in the form of a monthly pool – and it increases each month. Plus, your salary will be competitive and based on your experience and qualifications. And as a bonus, you’ll receive an additional 13th salary.

Sound like the role for you? Apply now and join our dynamic team!