Brief description :
As Lead Java Developer, you will be a senior member of the development team, and you will work on a variety of interesting projects. Working in a challenging SaaS environment that releases application updates frequently, you will be involved in the architecture, design, and coding of critical projects.
- Utilize core Java and open source technologies to develop highly scalable and secure applications
- Work closely with engineering and product management to identify technical requirements
- Write excellent code with full unit test coverage.
- Collaborate closely with QA to create robust test plans to measure quality and performance of the applications
- Collaborate in DevOps for the efficient and smooth deployment of test and production builds
- Assist in tracking and evaluating metrics: deliver software on time and to specification
- 5+ years of relevant object-oriented application building experience using Java in a professional environment
- Experience with Spring development framework including the Core Spring framework, Spring MVC, Spring REST, Spring Session, Spring Security is a must.
- Thorough understanding of relational databases such as MySQL. SQL and ORM technologies particularly JPA, Java Hibernate is a core requirement.
- Thorough understanding of fundamental design principles behind a scalable application and also an in-depth idea of how web applications work including security, session management, caching, clustering
- Experience with messaging technologies like Apache Kafka/Rabbit MQ/ Apache ActiveMQ is required
- Experience with Search technologies like ElasticSearch or Solr is desired
- Experience with AWS and other cloud services. Knowledge of container technology like Docker
- Experience in using Git, Maven, Jenkins;
- Agile/Scrum development cycle understanding
- Excellent communication skills and being able to work independently or in a full team
- Experience in test automation and test-driven development
- Experience and understanding of web sockets is highly desired
- Experience with NoSQL database technologies like Redis, MongoDB, HBase
- Understand, experience, or desire to learn Node.js
- Experience in Python desirable