Back to search:Software Engineer / Jakarta (south)

Education:

  • Minimum of a Diploma (D3) in Information Technology

Experience:

  • Junior: Fresh graduates are welcome. Must have completed a final project, internship, or training related to programming.
  • Middle: Minimum 3 years of experience as a Programmer or in an equivalent role in a similar industry.
  • Senior: Minimum 5 years of experience as a Programmer or in an equivalent role with significant responsibilities and project ownership.

Industry Knowledge:

  • Familiarity with general banking workflows or prior IT experience in the banking industry is preferred.

Core Competencies:

  • Proficient in one or more programming languages.
  • Strong analytical and debugging skills.
  • Ability to read and understand existing codebases.
  • Capable of designing system logic using flowcharts and diagrams.
  • Senior level: Demonstrated leadership, technical decision-making, and strong problem-solving abilities.

Technical Skillset:

  • Programming Languages: Java
  • Frameworks & Libraries: Spring Boot, Spring
  • Web Services & API: SOAP, REST
  • Java Platforms & Application Servers: Jakarta EE, JBoss, WebLogic
  • Containerization & Architecture: Docker, OpenShift (OCP), Kubernetes, Microservices, Circuit Breaker Patterns, State Management
  • Data Management & Databases: JDBC, JPA, SQL and NoSQL databases: MySQL, PostgreSQL, MS SQL Server, Oracle, DB2
  • AI & Automation: Generative AI (Gen AI)
  • Messaging & Switching: Kafka, SmartVista (Switching)
  • Version Control: Git, GitLab
  • Testing & Monitoring Tools: Jest, Mocha, Jasmine, PyTest, JUnit, Xdebug, Postman, New Relic
  • Caching: Redis
  • UI/UX & Design: Figma
  • Development Methodologies: Full understanding of Software Development Life Cycle (SDLC)

Responsibilities:

  • Understand and implement requirement of business users
  • Develop, testing, analyse and manage Java Web Application and supporting tools
  • Design database if needed for development
  • Coordinate with project team to achieve project performance target
  • Ensure software run smoothly by user
  • Monitor and maintain system stabilization in Production every day.
  • Coordinate with other IT teams in handling problems in Production.
  • Conduct investigations, analyze the root of the problem and recommend solutions to problems that occur in Production.
  • Make improvements and improve performance on managed applications.
  • Carry out routine maintenance on managed applications (weekly maintenance, monthly maintenance).