Java Technical Lead
- Jun 22, 2017
- By Thu Vo
- In Uncategorized
Tasks
- Single Point of Responsibility for the overall technical integrity of our team’s delivery.
- Partner with Architects on the design and architecture for our team’s deliverables.
- Be an active developer and contributor to the team’s delivery. Take the lead on solving and implementing difficult technology challenges and drive our team to successful delivery.
- Work closely with BA/QA team members to create test plans and ensure that issues are properly identified, fixed, and tested.
- Ensure development quality is being tracked and improved using techniques like Unit Testing and Peer Review.
- Cultivate and introduce (where appropriate) Agile engineering practices including: Pair Programming, Continuous Integration and Test Driven Development.
- Strengthen the presence of our team as a Technical center of excellence. Actively work with other leads to align to a consistent technology vision and keep the rest of the organization aware of our activities.
- Mentor team members to progress their technical and professional skills.
Skills
- 3 – 5 years experience working as a hands-on (actively coding) Application Development Lead or related role.
- Bachelor’s degree in Computer Science, Computer Engineering or a related field or the foreign equivalent.
- Extensive knowledge and experience working in an Agile environment.
- Technologies:
- Java – Expert-level implementation skills with Java and J2EE.
- Spring – Expert-level implementation skills with the Core Spring Framework and including other sub-projects like Spring Security and Spring Integration.
- Database – Expert-level implementation skills with ORM frameworks like Hibernate/JPA or MyBatis. Must be highly proficient in SQL preferably across multiple databases.
- Web – Expert-level implementation skills with building modern web applications using frameworks like jQuery, jQuery UI, Angular JS and Bootstrap.
- Application Servers – Broad and deep understanding of multiple application server platforms including Apache Tomcat and IBM WebSphere.
- General – Comfortable in more than one programming language and have a firm grasp of fundamental web/internet technologies.
- Engineering Practices:
- TDD – Must have practical experience with unit testing including deep understanding of Mock Testing Frameworks like EasyMock or Mockito.
- ATDD – Experience with Acceptance Test Driven Development including the use of tools like Cucumber and Selenium.
- Continuous Integration – Experience automating builds with Maven using CI Servers like Jenkins/Hudson.
- Continuous Delivery – Experience with automated deployments using a tool like Rundeck.
- Experienced mentor with the ability to work in a collaborative environment and coach other team members on coding practices, design principles, and implementation patterns that lead to high-quality maintainable solutions.
- Good communication skills in English (both written and spoken forms).
- 2-3 years of experience in IT support role or other customer support role.
- Bachelor’s degree in Computer Science, Computer Engineering or related field.
- Tech savvy with working knowledge of office automation products, databases and remote control.
- Good understanding of computer systems, mobile devices and other tech products.
- Ability to diagnose and resolve basic technical issues.
- Excellent communication skills.
- Customer-oriented and cool-tempered.