Java Software Developer
SINGAPORE
Job description
Introduction
As an Application Developer, you will lead IBM into the future by translating system requirements into the design and development of customized systems in an agile environment. The success of IBM is in your hands as you transform vital business needs into code and drive innovation. Your work will power IBM and its clients globally, collaborating and integrating code into enterprise systems. You will have access to the latest education, tools and technology, and a limitless career path with the world’s technology leader. Come to IBM and make a global impact!
Your Role and Responsibilities
· Contribute to all stages of software development life cycle.
· Identify and resolve any technical issues arising during operations.
· Design, implement and maintain Java-based applications that can be high-volume and low-latency.
· Analyse user requirements to define business objectives and envisioning system features and functionality.
· Define application objectives, functionality and ensure application designs conform with business goals.
· Create detailed design documentation and technical designs for application development
· Write well designed, testable code.
· Conducting software analysis, programming, testing, and debugging.
· Manage both back-end and front- end application development.
· Develop documentation to help business users.
· Prepare and produce releases of software components.
· Support continuous improvement for applications, investigating alternatives and technologies, and presenting for architectural review.
· Practicing Agile/Scrum methodology to plan and deliver work projects
Required Technical and Professional Expertise
· Proficiency in Java/J2EE, SpringBoot
· Familiarity with different design, architectural patterns, and skill for writing reusable Java libraries.
· Experience in working with web application frameworks like Spring, Spring Boot etc.
· Understanding of the concepts of MVC (Model-View-Controller) Pattern, JDBC (Java Database Connectivity), Hibernate and RESTful web services.
· Implementing automated testing platforms and unit tests.
· Applied experience in using MySQL/MariaDB Databases.
· Hands-on experience in configuring Web Servers and Application Servers.
· Hands-on experience in using RabbitMQ or Kafka Event
· In-depth knowledge of code versioning tools, for instance, Git.
· Understanding of building tools like Maven etc.
Preferred Technical and Professional Expertise
same as above