WHAT YOU WILL DO
As a Professional/Senior Java Software Engineer, you will collaborate proactively with functional analysts to translate business and integration requirements into configurable application designs and solutions using Java / Java 2 EE technologies. The senior will have application maintenance ownership, and the ability to work effectively with other technologies and account teams. Your primary responsibility will be to design and develop these applications, and to coordinate with the rest of the team working on different layers of the infrastructure.
• Drive and coordinate the technical life cycle of Java web applications across architecture, design, coding, testing, QA, and production support.
• Participate in and contribute to the design and technical architecture of Java web applications including the creation of detailed architectural specifications.
• Collaborate with other developers and quality assurance engineers to deliver high quality products.
• Develop a cooperative environment that fosters knowledge sharing and technical growth.
• Provide technical guidance and mentoring to the development team.
• Interview external resources for the project when necessary
• Directly report to PM and/or client
WHAT YOU ARE GOOD AT
To be successful candidate for this role, you have:
• Bachelor’s degree in Computer Science or equivalent work experience
• Minimum 3-year experience in Java programming
• Solid knowledge of Core Java, Servlet/JSP, JDBC, Webservice RESTful / SOAP, Hibernate, Spring, Spring MVC, Spring Boot, Microservices, Oracle, MSSQL and understanding of OOP, design and architectural patterns
• Solid understanding in working in one or more of vendor implementations such as Apache Tomcat, JBOSS, IBM WebSphere, BEA WebLogic
• Experience programming with NodeJS, NoSQL MongoDB/Cassandra is preferred
• Experience working with DevOps Jenkins, Docker, Puppet / Chef is advantageous
• Familiar with Responsive web design, HTML5, CSS3, BootStrap
• Familiarity with build tools such as Ant, Maven, and Gradle
• Proficient understanding of code versioning tools, such as Git
• Good command of English communication (oral and written)
• Good analytical, presentation, interpersonal and collaboration skills, strong team working ability.