Job summary: You will design, develop and coach a team of developers on numerous projects and will hold accountability for delivery of professional software development. To do this, you must make sure that the development team is able to work as efficiently as possible. You should be both a highly technical, hands-on coder and effective people manager as you will need to communicate cross-functionally and drive engineering efforts. You will be responsible for hiring, mentoring and growing a world-class engineering team, capable of taking on challenging projects, provide technical guidance and career development to team members.
- Bachelor's Degree or higher in Computer Science, Computer Engineering or related fields.
- 10+ years of experience in software development and 3+ years of experience in managing engineering teams including designing and developing complex and interactive consumer applications.
- Hands-on experience in:
o Object-oriented programming (OOP), Java is a must
o Java framework, especially in Spring, Spring Boot, Spring Cloud
o Design Pattern (Micro Service) o Web service structures, especially the SOAP and REST
o Code configuration management (build manager), especially Maven, Ant
o Development environment on Linux distributions, especially CentOS
o Application server (Web Logic, JBoss, Tomcat, etc.)
o Relational database information, MySQL is a plus
o Code revision systems, GIT is a plus
o Project tracking tools, JIRA is a plus
- Good command of English communication skills
- Ability to work as a team, proactive, well organized, willing to learn new things, and focus on objectives
- Strong problem solving and analytical skills
- Understand Agile development practices