Description
On behalf of Ciklum Digital, we are looking for a Middle Java Developer to join our team on a full-time basis.
You will join a highly motivated team and will be working on a modern solution for our client. We are looking for technology experts who want to make an impact on new business by applying best practices and taking ownership.
Project description:
Our client is one of the UKs leading fintech scale-ups. We are looking for a number of software engineers to join our rapidly expanding technology team. You will be part of a scaling business in a high-quality team that is working on new products and features while solving interesting technical challenges. In this role you will work in a cross-functional co-located team who are asked to solve a problem, rather than handed a task to do. This is an excellent opportunity to work in a high-growth environment with a fast-paced and collaborative culture where you will have access to the latest technologies.
Responsibilities
- Back-end development to meet customer’s business needs and implement components according to modern software development environment
- Taking part in the decision-making process in application code design, solution development, code review
- Develop and review feature design documents and provide inputs/update to specifications for the solution
- Design and implement a set of various types of tests (unit, integration, functional, etc)
- Proactive position in solution development, processes improvements
- Working in an international distributed team in an Agile environment
- Communicate with PMs, engineers, Architects, QA and other colleagues and stakeholders
- Delivering the product roadmap and plannings
- To use high coding standards, software best practices and write highly testable, automatable and performant code over the whole SDLC
Requirements
- Experience in software development for more than 3 years
- Strong knowledge in Computer Science, Computing Theory:
- Paradigm & Principles (OOP, SOLID)
- Database theory (RDBMS)
- Code testing practices
- Algorithms
- Data structures
- Design Patterns
- Understanding of network interactions:
- protocols
- conventions (e.g. REST, RPC)
- authentication and authorization flows
- standards and practices (e.g. oAuth, JWT)
- Strong knowledge and experience in Java (ideally experience with Java 11) (more than 2 years)
- Practical commercial experience with:
- REST API development
- Web application frameworks (e.g. Spring Boot Framework) (more than 1 years)
- Testing frameworks (e.g.e.g. JUnit, PowerMock, WiresMock) (more than 1 years)
- Java related Open Source technologies, such as Spring and Hibernate
- RDBMS (e.g MySQL/MariaDB, PostgreSQL, Oracle) (more than 1 years)
- Web Servers
- Version control systems (GIT)
- Docker
- Continuous Integration tools (e.g. Gitlab Pipeline, Jenkins, TeamCity, Bamboo)
- Builders
- Experience of micro-services using SpringBoot or similar
- Understanding of OOP and design patterns
- Experience with:
- Agile software processes and technologies
- Code Review process
- Refactoring process
- Upper-Intermediate English
Desirable
- Knowledge in:
- TDD, BDD
- Architectural, Enterprise Patterns
- Security patterns, Common attacks types (OWASP)
- Deployment patterns
- Experience with:
- Troubleshooting, profiling and debugging applications
- Microservices
- Practical commercial experience with:
- Key-value storages (e.g. Redis, Memcached)
- Messaging systems (e.g. RabbitMQ, Apache Kafka, Active MQ, AWS SQS, Azure Service Bus, Google Pub/Sub)
- Cloud solutions (e.g. AWS, Google Cloud Platform, Microsoft Azure)
- Serverless architecture
- Integration with 3rd party solutions
- NoSQL (e.g. MongoDB, ElasticSearch, CouchDB)
- Search Engines (e.g. ElasticSearch, Azure Search, Apache Solr)
- Quality tools (e.g. SonarQube)
- Experience of building a high-performance services-based platform
What's in it for you
- Career growth opportunities
- Realization of your innovative ideas in building new Ciklum Solutions and Services
- Friendly collaborative teams and an enjoyable working environment
- Professional skills development and training programs
- Variety of knowledge sharing, training and self-development opportunities
- State of the art, cool, centrally located offices with a warm atmosphere which creates really good working conditions