Position: Java Senior/Technical Lead I
Company: O2IT Recruitment
Category: Java
Experience required: 3y
English level: upper

Responsibilities:
Provide Technical Leadership in the scope of small to mid-size team;
Lead discovery analysis, play the key technical role in preparing proposals;
Helping Architect in preparing project architecture and end2end operational scope (cloud, SW, integration, data migration, security, acceptance, deployment, and further production support);
Analyze current development architecture for an ongoing project to optimize the solution;
Mentoring of other Mid/Senior level engineers and driving knowledge sharing session between technical teams;
Handle technical documentation;
Set the code style guides and tools to keep the code clean.
Technology Stack: Java 10-12, JBPM/Camunda, Apache Kafka/RabbitMQ, PostgreSQL, AWS.

Technical Requirements: 
4+ years in Software Development;
2+ years of experience with Java and modern frameworks;
Knowledge of microservices oriented architectures;
Practical experience working with an architectural approach, design patterns, integration approach, scalability, security, and data flow;
Experience in building CI/CD approach with using corresponding tools and technologies;
Advanced user of Git, JIRA, Confluence;
Experience in building and/or using RESTful services;
Knowledge of using messaging queues, in particular Apache Kafka, Pravega, RabbitMQ;
Experience with RDBMSes (PostgreSQL, Oracle), NoSQL engines;
SOLID;
Design patterns;
Security;
UML;
Practical experience working in cloud-based infrastructure (AWS).
Soft-Skills Requirements:
Leadership capabilities is a must: Energetic person (proactive), engage, direct, and teach others with the own example, care people in both tech\non-tech aspects;
Getting things Done;
Taking ownership;
Ability to say No;
Fluent English;
Excellent communication skills.