Should have excellent communication, presentation and organization skills
Strong experience in designing java EE applications - high level design architecture for application
Experience with Messaging APIs and servers - ActiveMQ, JMS
Strong experience of Java 8
Strong experience in Java microservices/rest services with Spring boot framework
Strong experience in Core Java development and hands on code
Strong experience on Java architecture and technologies
Ability to absorb and incorporate new technologies/frameworks quickly
Experience on cloud architecture and technologies
Excellent working experience in Oracle / DB2/ SQL Server and stored procedures
Experience in ORM specifications - Spring Data, JPA, Hibernate
Experience with Tomcat and Websphere
Experience in implementing secure web services
Experience with Agile development and version control tools like SVN for deployments
Experience on DevOps deployment tools
Candidates should be flexible / willing to work across this delivery landscape which includes and not limited to Agile Applications Development, Support and Deployment.
Responsible for:
Programming and software development of complex applications using various programming languages, related tools and frameworks
Reviewing code written by other programmers, requirement gathering, bug fixing, testing, documenting and implementing software systems
Interpreting architecture and design, code reviews, guiding and monitoring programmers, ensuring adherence to programming and documentation policies, software development, preparing and executing unit, system and user testing and implementation tasks
Apply industry best practices and techniques to design, develop, test, deploy, support and maintain complex Java applications based on business requirements using approved technologies and coding standards.
Exhibit leadership in cross-functional development practices and application ownership.
Required Skills and Experience:
Coordinate and review work and activities of programming personnel
Collaborate within team to develop new programming methods
Supervise, train, mentor junior level programmers in programming and program coding
Supervise, mentor and manage teams of programmers in one or more projects
Represent team in project meetings
Work with business and functional analysts, and software & solution architects in ensuring that programs and systems function as intended
Perform software testing and quality assurance inclusive of JUnit.
Responsible for Full software lifecycle application development.
Prepares documentation to assist in problem analysis, and submits recommendations for solution.
Prepares program specifications and diagrams, and develops coding logic flowcharts.
Tests, debugs, and installs developed software programs and procedures in coordination with user departments and IT operations support.
Provides functional analysis related to the design, development, and implementation of software systems, including, but not limited to application software, utility software, development software, and diagnostic software.
Participates in the development of test strategies and systems.
Provides the technical background and skills to perform in all phases of software design, development, documentation, and implementation qualifications.
Operational Support of key applications inclusive of on call off hour support.
Detail Oriented
Self-motivated: able to thrive in a fast-paced environment.
Strong analysis, problem solving, trouble shooting and debugging skills
Able to work independently
UI Design Experience.
Qualifications:
6-8 years (2 years min relevant experience in the role) experience, Bachelor’s Degree
Must have experience in Software Engineering Techniques, Software Engineering Architecture, Software Engineering Lifecycle and Data Management
Should be proficient in Business Analysis, Business Knowledge, Software Engineering Leadership, Architecture Knowledge and Technical Solution Design