Position: Java Developer
Company: Exadel
Experience required: 2y
English level: intermediate

Core Requirements:
-1+ years of experience using Java/Java EE
-1+ years of experience with Hibernate ORM/JDBC/MyBatis/JdbcTemplate/etc.
-1+ years of experience with RDBMS and SQL-language (MySQL/Oracle/Sql Server/PostgreSQL)
-1+ years of practical experience with Spring Framework or/and Spring Boot
-Experience with source code management systems: GitHub/Bitbucket/etc.
-Experience with build systems: Maven/Gradle
-Basic knowledge of HTML, XML, XSD, JSON
-Passion to work in a fast-paced Agile environment, delivering functional features in small time duration
-A quick learner and keen to learn new technologies

-Nice to have:
-Knowledge of at least one JavaScript/TypeScript framework (VueJs/ReactJs/Angular) 
-Knowledge of defining clean APIs and interfaces using web-service technologies (REST, SOAP, etc.)
-Understanding of Microservice development (Spring Boot, Kubernetes, Docker)
-Understanding of CI/CD DevOps (Jenkins)
-Basic knowledge of AWS technologies
-Basic knowledge of Servlets and JSP
-Good understanding of socket-level and multi-threading programming

English level:
Intermediate +

Responsibilities:
-Actively participate in software development and automated unit testing
-Complete development tasks within agreed timebox
-Analyze and resolve software issues
-Interact effectively with project teams, managers and end users
-Commitment to ongoing professional development
-Solid ability to grasp and apply new information quickly and handle increasing responsibilities with growing complexity
-Creative and innovative thinking with the ability to multitask

About the Customer:
-The customer is an American company based in Chicago. It accelerates digital transformation for the insurance and automotive industries with AI, IoT and workflow solutions.

About the Project:
-The Quick Estimate app, enables consumers to capture and submit photos and videos of their damaged vehicle, in a quick and efficient way. The insurance providers benefit from this self-service offering, since this enables them to get information from their customers in a rapid timeframe, in effect reducing the overall cycle time for a claim to be settled. Quick Estimate is the primary photo intake channel for all our CCC AI products and therefore allows carriers to extend the efficiency even further.

The project is a client mobile application. It has three versions: Android, iOS, and HTML5/JavaScript.

The apps are supported by multiple back-end components and require an understanding of overall web application architecture. It’s a blend of a traditional server-based application and individual microservices. Understanding of application security and performance is also crucial for supporting the back end.

This solution is powered by different AI-based APIs that process the client data provided via app. These APIs are running as microservices on a hyper-scale server, and an understanding of API gateway, Nginx, Load balancer, and Okta would be an added advantage.

Project Advantages:
-It is a core project that provides a great learning opportunity with Java frameworks such as Spring Boot, Spring MVC, Dropwizard, etc. with cloud technologies like S3, EC2, IAM, Kubernetes, Docker, Kafka, and SES
-You will get a unique experience on a blockchain project
-You'll get to see development from scratch

Project Team: 
-1 Delivery Manager, 1 Lead Java Developer, 1 Lead JavaScript Developer, 3 Senior Java Developers, 2 Middle Java Developers, 2 Senior JavaScript Developers, 2 UI/UX Designers, 2 Senior DevOps

Project Tech Stack: 
-Java 11, PostgreSQL, Spring Boot, Apache Kafka, Spring Cloud, OAuth2, Redis

Project Stage: 
-Active Development