freehire launches on Product Hunt on 26 August.

Follow →

Java Software Engineer

Summary

Develops and maintains Java-based software systems using Spring Boot, MariaDB, and RESTful APIs, with a focus on performance tuning and code quality.

Job opportunity for Java Software Engineer at Pt First Wap International in Kota Jakarta Barat, DKI Jakarta, Indonesia.

Kualifikasi

GENERAL FUNCTION:
Under supervision of the Team Leader or Development Department Manager, researches, designs and implements Java code following Software Development Life Cycle (SDLC) development model.

Responsibilities

  1. Implement computer software systems using Java code following software requirements specification as set up by the Development Department Manager or direct supervisor, this includes:
    • Research the technology used for the implementation
    • Analyze the specifications for the implementation
    • Estimate production time for the implementation
    • Design of the code implementation
    • Write unit tests for the implementation
    • Write the (Java) code, following 1rstWAP's Java coding guidelines
    • Maintaining proper documentation of the code
  2. Set up and maintain system (code) performance tests and execute code refactoring for existing code
  3. Perform thorough code reviews of other programmers
  4. Testing the implementation in a local environment, also checking logs and the user interface for flaws
  5. Providing training for department personnel and others on IT development issues related to his development scope and/or technical skills.
  6. If needed, provide technical support for installations done at the client
  7. Use our project management tool to report progress
  8. Find, analyze, and fix reported bugs in our systems
  9. If needed, participate in internal meetings, workshops and presentations
  10. Demonstrate a proactive mindset by identifying technical debt and taking ownership of initiatives to modernize and improve the codebase beyond the initial requirements
  11. Conduct ongoing research on emerging technologies to ensure the company utilizes the most efficient and modern tools available

Job Requirements

  • You hold a bachelor degree in Computer Science or IT discipline
  • You have at least 2 years of working experience in this sector (fresh graduates are occasionally welcome too!)
  • Strong application development programming knowledge using Java (at least Java 21 with readiness for Java 25)
  • Experienced with frameworks such as Spring Boot
  • Experienced working in Linux environment
  • Experienced working with Git
  • Strong knowledge of MariaDB
  • Experience with RESTful programming and API documentation using OpenAPI (Swagger)
  • Experienced in writing unit tests using JUnit or other unit tests tools
  • Strong skills in performance troubleshooting including identifying bottlenecks in Java applications using tools such as JConsole, VisualVM, etc
  • Solid understanding of asynchronous communication patterns and event-driven architecture
  • Familiar working with Intelij IDEA
  • Preferred: experienced with Redmine
  • Preferred: experienced with Docker/Podman
  • Preferred: experienced with RabbitMQ, Redis
  • Preferred: proficiency in shell/bash scripting for task automation
  • Ability to communicate with English effectively, both orally and in writing

See also