About Us:
As a Senior Java Engineer at Kenility, you’ll join a tight-knit family of creative developers, engineers, and designers who strive to develop and deliver the highest quality products into the market.
Technical Requirements:
- Bachelor’s degree in Computer Science, Software Engineering, or a related field.
- More than six years of experience in backend development, preferably in financial or high-throughput enterprise environments.
- Advanced knowledge of Java, including JVM internals, memory handling, garbage collection, and performance optimization techniques.
- Proficient in the Spring ecosystem, including Spring, Spring Boot, Hibernate, JPA, JMS, and Spring Batch (mandatory).
- Demonstrated ability to design and execute large-scale batch processing solutions using Spring Batch (mandatory).
- Experienced in creating RESTful APIs in adherence to REST architectural standards.
- Deep understanding of concurrency, multithreading, and transactional behavior in distributed architectures.
- Skilled in implementing comprehensive testing strategies covering unit, integration, and functional tests.
- Familiar with tools such as Maven, Git/GitHub, and contemporary CI/CD workflows.
- Strong command of relational databases, complex SQL queries, optimization strategies, and transactional control.
- Practical experience working with BigQuery for extensive batch and data processing tasks (mandatory).
- Expertise in using Redis for caching and handling large-scale batch operations (mandatory).
- Comfortable working in Linux-based environments, including shell scripting and automation.
- Knowledgeable in application security, performance tuning, and designing for scalability and availability.
- Extensive experience in Agile development environments with strong analytical and communication abilities.
- Minimum Upper Intermediate English (B2) or Proficient (C1).
Tasks and Responsibilities:
- Participate in the full development cycle of technical systems, from design through implementation and testing.
- Develop shared libraries and frameworks in Java within a Linux environment.
- Create unit, integration, and functional tests using simulators and mock frameworks.
- Collaborate within an agile framework alongside architects, engineers, product managers, QA, and operations to align on technical deliverables.
- Contribute to the evolution of system architecture and domain-specific technical solutions.
- Conduct code reviews to uphold code quality and facilitate team knowledge sharing.
- Support production environments by debugging and optimizing code to maintain high performance and availability.
Soft Skills:
- Responsibility
- Proactivity
- Flexibility
- Great communication skills