Position: Senior Full Stack (Java+Angular) for Ciklum
Company: Ciklum
Category: Java
Experience: 5y
English level: upper

Вітаю ✋ Я Роксолана з Ciklum.

Хочу запропонувати Вам роль Senior Full Stack Java Developer для нашого ізраїльського партнера, який виявляє онлайн-відмивання грошей, незаконні й небезпечні продукти та послуги. Компанія пропонує своїм клієнтам рішення для швидкої та регулярної аналітики потенційний ризиків під час роботи онлайн для банків, пеймент провайдерів і маркетплейсів.

Переваги співпраці з нами: remote, медичне страхування, робота з командою клієнта напряму, можливість впливати на продукт, регулярні плани розвитку всередині компанії, підтримка сертифікацій і багато іншого.

Від вас очікуємо:
✔ 5+ років досвіду на аналогічній позиції
✔ Досвід з Angular від 1-го року
✔ Рівень англійської Upper Intermediate+.

As a Senior Full Stack Java Developer, become a part of a cross-functional development team working for our Client.

You will join a highly motivated team and will be working on a modern solution for our existing client. We are looking for technology experts who want to make an impact on new business by applying best practices and taking ownership.

About the project:

Our Client is a pioneer in its field. By using technologies that illuminate the darkest corners of the internet and provide unparalleled visibility into the largest source of data in the world, the internet. The Client uses artificial intelligence and machine learning techniques to assess hundreds of millions of domains and effectively categorize the internet. These insights shine a light on hidden relationships and risks, identify an entity’s full digital fingerprint, and reveal new opportunities to scale businesses efficiently and confidently.

The Client is looking for an experienced Full Stack developer to join the engineering team. You will be responsible for building the client-side web application of our flagship product and will also contribute to the development of new future products that are based on our machine learning data infrastructure.

Responsibilities:
Back-end/Front-end development to meet customer’s business needs and implement components according to modern software development environment (cloud-based platforms, microservice architecture, etc.)

Taking part in the decision-making process in design application architecture, solution development, architecture and code review
Develop and review feature design documents and provide inputs/update to specifications for the solution
Design, develop and influence our flagship product
Develop new user-facing features
Developing features to enhance the user experience
Optimize application for maximum speed and scalability
Collaborate with developers, QA engineers and other team members to design, implement and provide a performant, scalable, reliable and flexible solution
Work together with Product and UI/UX Designers to define how the application looks as well as how it works
Division between back end and front end: 70% BE, 30% FE

Requirements:
Back End:
At least 4 years of experience in Java back end development – web Java is needed, better 5+
Good knowledge and experience with Spring Boot Framework
Strong knowledge of relational databases (MySQL preferred – strong knowledge of MySQL is must have)
Experience with large-scale distributed systems
Experience with systems that are in production state
Experience with a microservices- based architecture such as Docker/K8- An advantage (good to have, since client gradually shifts to microservices. K8s is part of daily job at project)
Hands on experience with cloud infrastructure, preferably AWS – An advantage (experience with any Cloud infrastructure – must, AWS – optional)
Experience with Big Data technologies such as NoSQL ,Queues and ES – An advantage (some experience with Queues is expected, NoSQL, ES – advantage, work with ES is planned, it’s currently implemented in processes)
Experience developing Groovy on Grails – A big Advantage (readiness to learn and to work with Groovy is a must, since monolith of app is written on GoG)

Front End:
At least 1 years of experience in Front End development with Angular framework
Experience in writing unit tests and UI automation – An advantage (UI automation – not obligatory, Unit tests, component tests – advantage)
Excellent knowledge in Computer Science, Computing Theory:
Paradigm & Principles (OOP, SOLID, DDD, TDD, BDD – knowledge of them all is usual for a Senior candidate)
Database theory (RDBMS – a must, NoSQL – not a must)
Code testing practices
Algorithms
Data structures
Architectural, Enterprise and Design Patterns
Security patterns, Reverse engineering resistance, Common attacks types (OWASP)
Practical commercial experience with:
REST API development
Testing frameworks (e.g.e.g. JUnit, PowerMock, WiresMock) – basic knowledge of writing any tests, no TDD is used
ORM (e.g. Hibernate) – must have
Messaging systems (e.g. RabbitMQ, Apache Kafka, Active MQ, AWS SQS, SNS, Azure Service Bus, Google Pub/Sub) – Client works with SQS but any systems will do
Version control systems (GIT)
Cloud computing platforms (e.g. AWS, Google Cloud Platform, Microsoft Azure) – experience with any will do
Continuous Integration tools (e.g. Gitlab Pipeline, Jenkins, TeamCity, Bamboo) – good to have experience, not a must

Experience with:
Troubleshooting, profiling and debugging applications
Creation software architecture and design of complex applications, platforms, microservices solutions
Agile software processes and technologies
Code Review process
Refactoring process
Fluent or Upper-Intermediate English

Desirable:
MySQL – a must. Others are good to have
MongoDB
Kafka
AWS SQS, SNS
Hibernate
Jenkins
Kubernetes (EKS), Helm, Terraform – great advantage. But if other technologies are of high quality it’s possible to leave w/o Kubernetes. Kubernetes started being used for CI/CD

What's in it for you:
Care: your mental and physical health is our priority. We ensure comprehensive company-paid medical insurance, Mental Health programs, as well as financial and legal consultations
Tailored education path: boost your skills and knowledge with our regular internal events (meetups, conferences, workshops), Udemy licence, language courses and company-paid certifications
Growth environment: share your experience and level up your expertise with a community of skilled professionals, locally and globally

Flexibility: choose how you want to work – a 100% remote or on-site in our offices. Own your schedule – you are the one to decide when to start your working day. Just don’t miss your regular team stand-up

Opportunities: we value our specialists and always find the best options for them. Our Internal Mobility Program helps change a project if needed to help you grow, excel professionally and fulfil your potential

Global impact: work on large-scale projects that redefine industries with international and fast-growing clients

Welcoming environment: feel empowered with a friendly team, open-door policy, informal atmosphere within the company and regular team-building events