Job Description - Technical Lead (JAVA)
The Team Lead will have to understand products, technologies and its applications. He should be able to resolve technical and module related problems. He should be a people manager.
The team lead will report of the Technical Manager
SCOPE OF RESPONSIBILITY
The second level of people management for a work team that comprises of engineers. Requires no to minimal direction and supervision.
Able to represent the product team externally and /or other external technology body with a level of authority and confidence.
Contribute to product & feature development including design, coding, unit testing
Understand client business issues and actively participate in designing products and features that meet client need?Ensures timely delivery and quality of the deliverables for the product
Able to identify problems and suggest improvements, or adapt existing methods and techniques drawing from past experiences and feedback.
Ensure that all team members have adequate work and prioritize wherever necessary with optimum utilization of resources.
Report status to Development/QA/Project Manager and ensure timely escalation on technical and project related issues.
Ensure process compliance by the team.
Conduct / facilitate team meetings, MOM of the meetings and handle team issues.
Facilitate peer-to-peer review; help resolve any dysfunctional behavior within team.
Prepare effective Training Plan for the team and induct new team members.?Team-up, mentor and motivate team members for technical excellence and growth.
Conduct technical interviews for new resources
Resolve critical issues and provide technical guidance to the team wherever required.
Strong skills in Core Java, J2EE, EJB 3.x, Web Services (REST JSON, SOAP), Prime Faces
Experience in Spring, JPA/tiles/JSTL, Hibernate, JMS, MQ
Proficient with multithreading & design patterns
Proficient in developing server side components / Middleware products
Experience in frameworks like Netty, AKKA, Camel, OSGI
Experience in using Gradle/Maven build and Continuous Integration(CI) servers (Jenkins/TeamCity)
Worked with application server (JBOSS/ WebSphere/Liberty/Tomcat) on Linux/Unix/Windows platforms
Experience working with databases (i.e. Oracle/Postgres SQL/DB2/MS SQL)
Experience on Java/J2EE stack unit and smoke testing (Junit, Mockito
Experience in JMeter (Nice to have)
Familiar on using Code Coverage and Static analysis tools (i.e. SonarQube, OWASP, JaCoCo)
Deep understanding and experience of Software development lifecycle and Agile Methodologies
Understand and follow best practices, defined processes and tools
Excellent oral and written communication skills
Should have an ability to understand the software product requirements/features, architecture and design
Analyze, estimate, design & implement product requirements
Should be able to review requirements, code, design, use cases, unit/smoke test cases
Passion for software quality, delivering high scale services and achieving engineering excellence
Strong understanding of issues related to large-scale distributed computing and the ability to take a broad view of the system as a whole
Strong problem-solving skills, mastery of data structures and algorithms, and the ability to think outside the box
Able to adapt latest technologies/frameworks/tools
JOB & REQUIREMENT
8 to 13 years of hands on experience on Java, J2EE, Spring, Hibernate, Web Services (REST JSON, SOAP), JMS, MQ
Fulltime Bachelor and/or Master degree in Engineering with a minimum of 60% grade?The ability to work in teams, global environment, partner effectively with cross-functional teams, and manage multiple priorities and deliverables concurrently
Demonstrated ability and experience in the entire SDLC