Position: Senior/Lead Java Developer, Tech Lead, Software Architect,
Category: Java
English level: fluent
Years of experience: 11


10+ years in Java ecosystem. 20+ years in software engineering. Successful projects from scratch in telecom, banking, e-commerce, industrial, IoT using Agile software development practices.

Skills: team leadership and mentorship, software design, API design, documentation, customer communications, customer demo, incidents investigation, newcomer onboarding, development, bug fix, code review, code refactoring, unit tests, integration tests, end-to-end tests.

General SE: OOP, SOLID, GRASP, Design Patterns, Enterprise Patterns, Architectural patterns, TDD, BDD, SCRUM, KANBAN.

Java/JavaEE: Java 6-17, Concurrency, Java Memory Model, Java Memory Management, JDBC, JPA, JTA, JAX-RS, JAX-WS, JMS

Frameworks: Spring Core (v.3-v.6), SpringBoot (v1-v3), Spring Data, Spring Cloud Stream, Spring Security, Hibernate, Istio, Envoy, Vert.X, Antlr, Tomcat, Netty, Jetty, Swagger.

Build: Maven, Gradle, Ant

SVC: Git, Mercurial. 

Testing: JUnit, Mockito , Cucumber, JBehave.

Messaging: ActiveMQ, RabbitMQ, Kafka, Kafka Connect, Kafka Streams

RDBMS: PostgreSQL, Oracle, MySQL.

NoSQL: Couchbase, MongoDB, Casandra, InfluxDB.

DB Migration: Liquibase, Flyway

Distributed cache: Redis , Hazelcast, Memcached

BigData: Hadoop, NiFi, Hive, Spark, Solr, Avro, Orc, Parquet.

DevOps: Docker, Kubernetes, Helm, Bamboo, Jenkins.

Other: Graylog, Fluentd, DataDog, MQTT, LoRaWan.
Long term projects in Automotive, Industrial, Energy, Telecom and IoT domains are preferable.