JD - Lead Software Engineer - Java - HCMC

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Lead Software Engineer (Java)

Location: Ho Chi Minh City, Vietnam


Description
We are looking for an experienced Lead Software Engineer specialized in Java in Ho Chi Minh City. We have many
opportunities with global brand-name clients for high-profile projects that require someone with excellent
technical delivery skills.

We Offer
• Unique opportunity to work for challenging projects in a multinational team
• An extremely international working approach; expect to work with clients, trainers, managers from major
cities in Asia, Europe and the US.
• There is no typical day; you have the opportunity to be involved in tech talks, client demos, training,
prototyping, pre-sales as well as software development
• The highest levels of technical software delivery; you will be challenged and you will learn new skills and
techniques
• Competitive compensation depending on experience and skills
• 10 days paid sick leave
• 19 days paid vacation
• 13th month salary as standard
• Regular assessments and salary reviews
• Free English classes and unlimited self-service trainings
• Opportunities for self-realization
• Friendly team and creative atmosphere
• Flexible working schedule
• Corporate and social events

Responsibilities
• Plays a multitude of different roles on a project, depending on client needs; development team lead, key
developer, software architect roles, project coordinator, reviewer or auditor
• Be a role model for colleagues, e.g. create deliverables and technical documentation in high quality
Lead Software Engineer (Java)

• Understand, follow and enhance defined software development process and introduce engineering
practices
• Provide input on, follow and evangelize code quality guidelines and standards
• Review and audit design solutions
• Conduct code reviews and highlight best of breed solutions
• Identify and troubleshoot application code-related issues, review and provide feedback to any required
final user documentation
• Communicate directly with architects on client’s side
• Communicate with clients on a regular basis to clarify business requirements
• Participate in workshops and presentation of the proposed solutions to clients
• Run demo and education sessions for client
• Drive full life-cycle of application development using Agile approach:
- Idea generation and high-level vision creation
- Solution design and documenting, proposal
- Development, Testing, and Production launch
• Be a member of cross-functional teams that experiment with new technology and proactively search for the
best solutions and ideas in the marketplace
• Coordinate your work with other developers to deliver first-class technology solutions in a positive, fun, yet
challenging and deadline driven environment
• Work closely with internal and external product and technology teams to bring technology solutions and
perspectives to the product development process
• Proven experience in evaluating theoretical knowledge vs. practical (on-the-job) skills and seniority level of
candidates as well as actionable feedback and recommendations on positions/projects matching

Requirements
• Bachelor’s degree or above in Computer Science, Software Engineering or related major • Minimum 7 years of
relevant development experience with expert knowledge of at least one technical area in Java
• UML, Modeling and Design skills
• Advanced knowledge of Core Java, Spring, Hibernate, Webservices, RESTful services • Understanding of
code quality measurements and able to implement efficient Unit Tests • Expert in designing high quality
solutions using OOP, TDD/BDD, Design Patterns and SOLID principles • Expert in relational database
technologies e.g., SQL Server, Oracle
• Expert in Linux, source code control tools (e.g., GIT, SVN)
• Experience of CI/CD tools (e.g., Jenkins, SonarQube)
• Excellent interpersonal skills, analytical mind, conscientious attitude, and passion for engineering
excellence
• Ability to analyze several possible decisions of engineering problem and evaluate which one is better suited • In
depth understanding of different phases of software development lifecycle and understanding of Agile Scrum
processes
• Willingness to adapt to changing requirements and ability to prioritize accordingly • Active learner
who is passionate about technology and keeps up to date with technology changes • Good
communication skills in international environment
• Upper intermediate (CEFR B2) or higher level of spoken and written English

Desirable:
Lead Software Engineer (Java)

• Ability to lead or coordinate a small team of 2-3 developers; coaching, reviewing code, informal training,
directing tasks
• Experience of Docker and Kubernetes, Spring Cloud, Microservices is preferred
• Expert in debugging Java and optimizing application performance
• Familiar with at least one unit-testing framework, such as Junit or TestNG
• Experience of architecture design and DevOps operation
• Knowledge of frontend technologies (e.g., JavaScript, React)
• Ability to evaluate various development methodologies SCRUM, Kanban, Waterfall based on project
requirement
• Working experience in global environment where colleagues, stakeholders and onsite client team are based in
different locations, be able to cope with differences in culture, and time zones
• Experienced in mentoring less senior colleagues on the project(s)
• Experienced in conducting training or technical tech talks in the area of expertise
3

You might also like