Fully responsible for analysis, design, development, deployment and maintenance of project.
Ensure modular, reusable and excellent quality code through TDD, code reviews and implementation of best practices
Make architectural decisions in collaboration with technology experts, ensure proper technical documentation
Pro-active involvement in project risk analysis and mitigation, continuously review problems to determine the root cause in order to prevent them in the future.
Ensure scalability, performance, reliability and security of the application
Keep up with trends in the constantly evolving technology.
Gather and analyze business requirements, understand business perspective of the client, and plan product roadmap in collaboration with project manager and client
Encourage, involve, motivate, lead team members for learning and achieving project and departmental goals.
Identify training needs, organize, and coach team members on various aspects of their career growth.
Actively involve in ensuring implementation of organizational culture, process and standards.
Graduate in Computer Engineering or similar IT background or equivalent practical experience
Excellent knowledge of programming principles (OOP, SOLID, Cohesion, Coupling, Encapsulation)
Strong Object-Oriented Analysis & Design skills required
Strong expertise with Core Java concepts.
Deep knowledge and proven experience in either Spring Framework or Java EE and related Programming Models
In-depth knowledge of Java Application Servers (Tomcat, Websphere, Weblogic, or JBOSS)
Good concept of Design patterns and their implementation
Good knowledge on HTML, CSS, Javascript, Database and web application security.
Excellent knowledge of test driven development and Continuous Integration
Excellent written and verbal communication skills, comfortable with client communication
Results-oriented, customer-focused with a passion to resolve tough technical and operational challenges.
Possess excellent analytical and problem solving abilities
Good leadership skills - ability to motivate and mentor team members, ability to plan and make sound decisions, ability to negotiate tactfully with the client and team
Good documentation skills (API Documentation, Deployment Documents, Application Architecture Documents etc.)
Excellent knowledge of build tools Maven or Ant
Highly experienced with Agile methodologies like Scrum/Kanban
Experience of cross cutting technologies like Groovy on Grails, Scala, Hadoop is preferable.