Lancesoft Indonesia

Senior Java Software Engineer

Posted: 1 hours ago

Job Description

Job description• Involved in a team who manages core system development.• Be involved and participate in the overall application lifecycle. • Write and perform unit testing. • Perform code review prior to every pull request and/or merge request. • Define and communicate technical and design requirements. • Define estimates (in Story Points) based on specified requirements.• Troubleshoot and debug applications. • Participates in standby mode / on call duty for issue solving.Soft Skill• Independent, have good communication and collaboration skills with other teams. • Very Proactive. Initiate communication to avoid status quo.• Strong problem-solving skills and the ability to troubleshoot complex technical issues.• Mentor and Coach Jr. IT Developer and IT Developer• Experience in handle in cross functional team with min 5 yearsMinimum Requirement • Fluent in English, both written and verbal.• Experienced in minimum 3 full cycle of enterprise wide / cross country project using English as the working language.• Minimum 5 years of experience ino Java as the most recent programming language o Springboot. In-depth knowledge of Spring Boot, including microservice architecture and REST API development.• Good understanding of microservices concept.o Expertise in implementing resilience patterns (retries, fallback method) and designing scalable systems.• Good knowledge of:o Spring framework, its principles, and various Spring modules.o ORM/SQL mapperso Databases• Having knowledge of messaging system (JMS/Kafka/Rabbit/Redis)• Deep understanding of Spring Security architecture and advanced security patterns.• Extensive experience implementing complex authentication and authorization mechanisms, including OAuth2 and SSO (Single Sign-On),• Ability to conduct security auditing and implement necessary measures to secure applications against common vulnerabilities (OWASP Top Ten) is a plus• Mastery of Spring Batch capabilities, including job orchestration, scheduling, and monitoring.• Experience in developing robust and scalable batch processing solutions with error handling, transaction management,• Familiarity with integrating Spring Batch with external systems• Experienced in analyzing and enhancing legacy code is an advantage.• Experienced in JVM/concurrency troubleshooting as well as JVM tuning.• Very good knowledge of most of the design patterns and design principles.• Very good Linux foundations and scripting as well as exposure to containerization technologies (Docker/K8S)• Knows various design pattern groups (GoF, EIP, Java EE, Microservices)• 5+ years experience in Springboot with a proven track record of leading projects.• Familiarity with Spring Cloud for distributed systems is plus. • Knowledge of tools and practices for monitoring and logging in distributed systems (ex: Prometheus, Grafana) to ensure system health and performance.• Strong tooling skills such as:o VCS (Git/SVN)o CI/CD (Jenkins/TeamCity/GitlabCI)o Configuration management (Ansible/Chef/Puppet)o Distributed logging (ELK/Splunk)

Job Application Tips

  • Tailor your resume to highlight relevant experience for this position
  • Write a compelling cover letter that addresses the specific requirements
  • Research the company culture and values before applying
  • Prepare examples of your work that demonstrate your skills
  • Follow up on your application after a reasonable time period

You May Also Be Interested In