Java Technical Lead
New York, NY
The successful candidate will demonstrate ability to own all design & development aspects of a full implementation, and be able to take the product from concept to production through following high level tasks: analysis of requirements to drive further clarification; propose, define and document sound design/refactoring options & alternatives; create sound pre-development estimates and assign tasks to other developers; develop application code and unit tests; integrate with other applications as necessary; deliver integrated application components to Testing and Quality Assurance team and support delivery to Production environment.
Individual must be a self-starter with the ability to handle a number of simultaneous projects, demonstrate a sense of urgency and ownership to drive projects to completion, and be successful in a collaborative environment. The candidate must be organized, detail oriented and be able to prioritize tasks. He/She will help ensure that application code is of high quality by participating in/leading code reviews, writing automated test harnesses, assist in the deployment of code onto the pre-production & production environments and help in mentoring junior staff.
Strong analytical and problem solving skills, high level of technical competency & leadership, attention to detail and the ability to communicate effectively (written & verbal) are also critical success factors for this role. Professional certifications and continuing education history must suggest knowledge and familiarity with J2EE design & development techniques.
Relevant job functions & position requirements include:
- Design complex, high traffic web-based applications using Object-oriented design and patterns
- Experience with frameworks Spring MVC, Spring Batch, Spring Boot, Spring Data, etc.
- Experience developing search applications using Apache SOLR is preferred
- Ability to work with Oracle and MongoDB databases – knowledge of database programming using PL/SQL and other NoSQL databases is highly desired
- Experience developing using Groovy
- Familiarity with Functional Programming and Microservice Architecture is desirable
- Familiarity with stream processing using Apache Storm and Event Driven Architecture is desirable
- Familiarity with Rich Client internet applications is desirable
- Experience working with version control system Git or similar
- Working knowledge of defect tracking and configuration management systems - preferably, JIRA and Confluence
- Develop detailed work breakdown structure for analysis, design, development and deployment activities
- Attention to detail including – maintaining issues lists and timely status reporting build applications deployed on Tomcat
- Ability to perform application trouble-shooting and lead root-cause analysis
- Ability to identify performance bottlenecks and come up with ways to address those issues