Software Engineer/Senior Software Engineer (Java with R code) Singapore, Singapore
Software Engineer/Senior Software Engineer (Java with R code) Description
Job #: 57618DESCRIPTION
We are looking for an experienced Senior Software Engineer specialized in Java for our Singapore Delivery Center to make the team stronger.
We Value
Value the individuals – We encourage and motivate people to grow. We perceive our people as a source of our success;
Strive for excellence – We strive for the highest standards of excellence and continuously learn. We take pride in our engineering and accomplishments;
Act as a team – We treat one another with respect and encourage the best ideas to come from anywhere within the organization. We value our diversity;
Focus on Customers – We build long term customer relationships, as we strive to always understand our customers' business and needs;
Act with integrity – We operate legally, honestly and ethically. We take responsibility for our actions.
Responsibilities
- Play key developer role. Sometimes may play development team lead and project coordinator role as well
- Write high quality, testable code following clean code and SOLID design principles
- Conduct code reviews
- Create design, technical and project documentation
- Plan and schedule own work for tasks and projects, also implement functionality without direct supervision
- Perform profiling and troubleshooting of existing solutions
- Coordinate application deployment
- Follow and understand defined software development process
- Participate workshops and presentation of proposed solution to customers
- Communicate with customer on regular basis to clarify business requirements
- Provide coaching to team members with technical solutions
- Work independently while in close collaboration with others in the team and across projects
Requirements
- Minimum of 5 years of experience in software engineering and development using Java, and R Code experience
- Must have experience in translating R code into Java efficiently
- Advanced knowledge of Core Java, Spring
- Good knowledge of Hibernate, Webservices, Restful services
- Understanding of code quality measurements and able to implement efficient Unit Tests
- Experienced in relational database technologies e.g., SQL Server, Oracle
- Experienced in Linux, source code control tools (e.g., GIT, SVN)
- Experienced in CI/CD tools (e.g., Jenkins, SonarQube)
- Good interpersonal skills, analytical mind, get things done 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 and ability to adapt to changes in priorities and requirements
- Active learner who is passionate about technology and keeps up to date with technology changes
- Good communication skills
- Intermediate (CEFR B1) or higher level of spoken and written English
- Bachelor degree or above in Computer Science, Software Engineering or related majors
Nice to have
- Expert in debugging Java and optimizing application performance
- Familiar with at least one unit testing framework, such as Junit or TestNG
- Knowledge in frontend technologies (e.g., JavaScript, React)
- Experience in DevOps operation
- 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 locate in different locations, be able to cope with culture and time zone differences
We offer
- Friendly team and enjoyable working environment
- Work-life balance and flexible schedule
- Online training library, mentoring, career development and potential partial grant of certification
- Unlimited access to LinkedIn learning solutions
- Referral bonuses
- Compensation for sick leave and paid time off
- Opportunities for self-realization