Software Engineer (Java)

Shenzhen, China

Striving for excellence is in our DNA. Since 1993, we have been helping the world’s leading companies imagine, design, engineer, and deliver software and digital experiences that change the world. We are more than just specialists, we are experts.

DESCRIPTION


Currently we are looking for an experienced Software Engineer specialized in Java for our Shenzhen 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 a Developer role;
  • Write high-quality, testable code following clean code principles;
  • Implement functionality by following defined software development process without direct supervision;
  • Read and understand project and requirement documentation;
  • Create documentation describing his/her code;
  • Participate in Agile, Scrum activities: daily standup, demo session, retrospective, planning, etc.

Requirements

  • 1+ year of experience in software engineering and development using Java;
  • Advanced knowledge of Core Java, Spring, Hibernate, Web services, Restful services;
  • Good interpersonal skills, analytical mind, get things done attitude, and passion for engineering excellence;
  • Good communication skills;
  • Good understanding of concepts in OOP, design patterns;
  • Experienced in relational database technologies e.g., SQL Server, Oracle;
  • Familiar with Linux shell scripting;
  • Well-versed with using version control tools (e.g., GIT, SVN);
  • Good understanding of software development lifecycle, experience in Agile Scrum process;
  • 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's degree or above in Computer Science, Software Engineering or related disciplines.

Nice to have

  • Knowledge of Java tools (Maven);
  • Knowledge of TDD, BDD practices;
  • Good understanding of SOLID design principles;
  • Knowledge of Database programming e.g. Oracle PL/SQL;
  • Experienced with development process and CI/CD tools e.g. Atlassian Jira, Rally, Jenkins, Bamboo, SonarQube;
  • Knowledge of front-end technologies (e.g., JavaScript, React);
  • Experienced in Spring Cloud, Microservices;
  • Ability to communicate with customer on regular basis to clarify business requirements.

We offer

  • Unique opportunity to work for challenging projects in a multinational team;
  • Competitive compensation depending on experience and skills;
  • Regular assessments and salary reviews;
  • Free English classes;
  • Opportunities for self-realization;
  • Friendly team and creative atmosphere;
  • Flexible working schedule;
  • Corporate and social events.