Essential Functions
- Work within Agile methodology and play an active role in User Stories, Sprints, and Ceremonies.
- Drive efficient DevOps methodology for full cycle Java development and deployment
- Collaborate effectively with peers to solve complex problems spanning their respective areas and resolves technological disagreement with informed, rational debate.
- Working with colleagues and technical resources to define technical solutions to meet business requirements using agreed tools and technologies
- Develop application and service components that meet User story specifications and technical specifications
- Ensure the US/India development team and Contractors develop solutions in line with Company’s standards and practices.
- Perform code reviews for offshore India development team, Contractors and provide suggestions and guidance.
- Understand Java performance analysis to identify the reasons for performance bottlenecks, Memory leaks and resource usage and provide effective suggestions/resolutions.
- Propose tools and technologies to meet the business requirements as needed. Also ensure that the Technologies chosen align with the teams skill set and our Standards.
- Identify and articulate Technical risks
- Collaborate and work with Enterprise Architecture and other I/S teams
Skills, Experience and Education Required
- Bachelor’s degree in Computer Science or a related 4 year degree.
- Minimum 10+ years of experience
- Hands On Programming Experience in Java, Struts/Spring, JEE
- Full stack development experience
- Programming patterns: Service-Oriented design and development
- Highly proficient in Web development technologies including HTML5, CSS3, and various JavaScript development frameworks including jQuery, Angular JS and Bootstrap
- Excellent understanding and ability to articulate SOA concepts and patterns.
- Design and development of service resiliency to meet high availability and failover requirements
- Experience with testing framework such as JUnit, Selenium a plus
- Experience with Jenkins
- The ability to understand, improve/optimize, and debug code.
- Experience designing and developing data persistence layer.
- Experience in relational database technology including understanding of SQL, object relational mapping and data translation
- Use of caching technologies such as memcache, Redis, or ehcache
- Design and use of authentication and authorization from the application and service levels; credentials, permissions from AD, ForgeRock, database driven or similar
- Development and use of auditing and logging frameworks, including incorporating applications such as AppDynamics for end-to-end request tracking.
- Experience with performance profiling tools.
- Experience with JIRA or similar ALM for Agile artifacts
- Experience with git preferred
- Experience with setup, maintenance, deployment, management of Tomcat, JBoss, Wildfly or similar JEE container platforms.
- Experience with Windows Server and Red Hat Linux operating systems
- Strong attention to details with the ability to handle multiple projects/tasks simultaneously.
- Strong problem solving characteristics with the ability to think out of the box.
- Excellent interpersonal, written and verbal communication skills with the ability to communicate with internal team members as well as business stakeholders.
- Previous experience with integration with SAP is a plus
- Experience with .NET/C# technologies and development and deployment practices is a plus.