Vacancy expired!
Responsibilities:
- Lead the technical design, planning and manage development of both UI and back-end services. Document and present architectural decisions to the team, peers, and management. Provides architectural guidance to the development team.
- Work with the development team, project managers, business analysts, Quality Assurance and users across the organization and create agile, intuitive, and easy-to-use software.
- Deliver prototypes, reusable and shared microservice components, advanced solutions, and implementations of application in Java.
- Drive the evolution of our technology platform and development standards to ensure that we deliver scalable software solutions to business requirements.
- Work with developers and integration team to brainstorm and research new design patterns in creating reusable solutions that can be utilized across the organization.
- Develop complex RESTful services in a cross-functional and Agile development team.
- Perform code reviews and code merges from all team members.
- Follows best practices for test-driven development (unit testing and beyond)
- Designs functional/system integration tests and automation.
- Work with other groups within IT to foster the DevOps culture around automation of builds, testing, deploys and scaling.
- Contribute to the SOA standards for the company and Conduct impact analysis.
- Mentor and train developers and help to solve the technical challenges.
- Pushes the envelope with innovative and creative thinking.
- Provide modern and performant single page applications and address unique challenges in the interaction with various devices and input preferences.
- 10+ year experience and expert knowledge of Java (7+) enterprise development and integration middleware development.
- 3+ year experience with hands-on application architecture for large enterprise solutions.
- 7+ years of experience in each of the following skills: Java, Spring Core, Spring Integration, Spring Boot, Spring MVC, Spring Security.
- Strong understanding of Java concurrency, concurrency patterns, experience building thread safe application.
- Must have extensive web application experience in developing employee/customer facing high scale applications.
- Knowledge in Front End technologies: Angular, HTML5 and CSS3; JavaScript development (including object-oriented development)
- Advanced skills in implementing Service APIs (SOAP, REST) with the market leading API Management tools such as Apigee, API Gateway.
- Extensive experience delivering microservice based architecture leveraging APIs, containers, and automation.
- Experience with web service technologies like JAX-RS, JSON, JAXB, JAX-WS, and WSDL.
- Advanced knowledge of highly efficient RDBMS SQL (e.g., DB2, Oracle) and Java integration with it using Spring Data, JPA, Hibernate.
- Experience with NoSQL implementations a plus (e.g., MongoDB, AWS DynamoDB).
- Experience on cloud-based technologies (Preferred AWS or Kubernetes with OpenShift) and experience building cloud native applications.
- Extensive hands-on experience with AWS technologies like Lambda, SQS, EC2 and ECS is a plus.
- Expert knowledge in various data integration solutions (synchronous and asynchronous) messaging, Publish/Subscribe models, Middleware, and other related methodologies in a multi-user, multi-platform, multi-tier environment.
- Experience with messaging products like IBM RabbitMQ, Kafka or ActiveMQ
- Experience in Continuous Integration (CI) / Continuous Deployment (CD) using tools such as Maven, Gradle, Git, Sonar, Jenkins, Jira.
- Hands On experience with TDD with expertise in Junit5 / Mockito.
- Strong analytical, communication and team collaboration skills
- Work as a multi-skilled professional practicing Agile/SCRUM methodology.
- Ability to coach and mentor junior developers as well as teams adopting the platforms.
Vacancy expired!