Brief description :
We are looking for a Lead Java Developer with 5+ years of experience. The Team Lead will be responsible for technically leading one or more software projects through all stages of the life cycle, including responsibility for requirements capture, prototype, design, development and acceptance testing. The Incumbent will be an integral part of our Development team in developing highly dynamic and scalable multi-tier applications and demonstrate personal commitment and accountability to ensure standards are continuously maintained and improved both within the internal teams, and with partner organizations.
The Team Lead should have the comprehensive knowledge and skills required to motivate and guide the development team and maintain a comfortable and conducive working environment.
Preferred skills
Technical Skills
- Strong in Core Java/ JEE design patterns and performance optimization techniques
- Hands on expertise on distributed messaging architecture, JMS etc.
- Hands on expertise on SOA and Web services (SOAP and REST)
- In-depth knowledge of popular Java frameworks like Spring, Hibernate etc.
- Good experience with Object-Oriented Design (OOD), building and testing Java EE applications
- Awareness or knowledge in Apache frameworks (Camel, ActiveMQ, Kafka, Redis, etc.)
- Experience in deploying applications on Tomcat / Jetty / JBoss / Wildfly
- Hands-on experience on RDBMS and NoSQL DBs (Oracle / MySQL / Cassandra / MongoDB etc.)
- Working experience on distributed source control tools like Git
Duties and Responsibilities
- Work independently as well as lead a team in planning, designing, implementing and deploying multi-component software systems of significant complexity
- Analyze business requirements and come up with an optimal technical solution/design
- Estimate the development effort, allocate the tasks to the team and track its progress
- Work closely with the development team, mentor and review their code/ design, to ensure adherence to designs, solutions, and standards
- Interact with different development teams and project managers to design and implement new initiatives and industry best practices. Candidate must be able to make design recommendations to software projects and participate in application design reviews
- Manage, mentor and train junior and mid-level developers
- Identify inadequacies in current processes or procedures, and propose solutions
- Ensure the integrity of the application as well as ensure security and compliance to standards
- Ensure testing is performed properly and present software health reports to the senior management along with recommendations
- Implement software engineering practices like Agile, Test Driven Development, Continuous Integration and other best practices in coding, testing, version control and deployment.
Other Requirements
- Experience working in a fast-paced start-up environment
- Ability to work productively under pressure and strict timelines
- Excellent interpersonal and communication skills (both written as well as spoken)
- Able to establish rapport with people at all levels
- Ability to remain focused with task at hand as well as multi-tasking
- Proven experience as a Senior Java Developer and Team Lead
- Good delegation and time management skills and problem-solving abilities
- Effective coaching and mentoring skills
- Strong analytical and problem-solving skills
- Strong negotiation and influencing skills
- Strong sense of ownership and willingness to go the extra mile when needed
It would be an excellent added advantage if the candidate also has the following additional skills
- Expertise in more programming language (like Python, Scala etc.)
- Experience in building front end layer of applications using ExtJS or other JavaScript libraries
- Contribute to open-source projects
- Exposure to big data and stream processing