Good experience in publishing and consuming web services using RESTFUL API
Hands on experience in Java Multi-Threading, Collection, Interfaces, Synchronization, Exception Handling
Expertise in implementing design patterns like Factory, Singleton, Delegate, and J2EE Design patterns
Expertise in working with web-socket using Spring-web-socket, SockJS, Stomp and RabbitMQ
Implemented distributed java cache using Hazelcast
Good working knowledge of Log4j for logging
Used Hibernate and Spring JPA to persist data into the database.
Improved importing and processing big csv files by using Spring Batch with multi-threaded step
Integrated Liquibase for database source control
Good working experience with PostgreSQL
Worked on deploying and maintaining Spring boot microservices using Docker and HAProxy
Excellent experience in construction of UI using jQuery, AngularJS, Bootstrap and JavaScript
Good experience with front-end build, package management and task automation with Grunt, Gulp, NPM and bower
Good working knowledge of application generators Yeoman and JHipster
Worked with Elastic search to improve search queries response time
Used Jenkins CI to prepare packages and deploy them as docker images afterwards
Solid experience with SVN and Git Version control systems
Experienced working atlassian collaboration tools like JIRA, Confluence and Fisheye
Hands on experience in Intellij IDE
Involved in installation and configuration of Tomcat
Excellent written and oral communication skills, team playing spirit and strong analytical & problem solving abilities
Detailed Description
As a newly graduated student, i joined a small start up company alongside some of the most motivated web developers on a quest to deliver a CRM application from scratch using the best technologies the market has to offer with an Agile approach.
Worked in 3 different projects: GAYA2, Console and GAYA3
GAYA2: an existing CRM, our objective was to add new modules, fix bug and work on performance issues. This project was shut down after 7 years of development due to bad technological stack that was picked: Skelax (php framework), Mootools (JS framework)
Console: A supervision web tool, dedicated for infra teams, to supervise client platforms and easily manage them. In addition to real time aspect, it offers tools for geo-localisation, web integrated terminal to easily switch between client servers and accomplish needed tasks with lesser effort. This project was a way to try the new technological stack: Spring / AngularJS
Gaya3: After the success that the Console project met from the infra teams, we decided to start from scratch the new version of the CRM. This project was based on: AngularJS for UI, Web socket for real time aspect, Rest for web service calls, spring boot for micro service architecture, docker for deploiement, and Jinkins for continuous integration