Java Engineer Job Description Template
Our company is looking for a Java Engineer to join our team.
Responsibilities:
- Provide technical mentoring and leadership to more junior resources;
- Leverage CapTech’s internal programs and self-directed training to continually develop industry relevant knowledge and skills;
- Experience with test driven development;
- Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate);
- Experience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC);
- Experience in the Spring Framework;
- Hands on experience in designing and developing applications using Java EE platforms;
- Proven working experience in Java development;
- Experience with React.js;
- Drive user story analysis and elaboration, design and develop software applications, and test and build automation tools;
- Own all technical aspects of software development (architecture, design and development of systems) for assigned applications;
- Drive consistent development practices – tools and common components;
- Identify opportunities for adopting new technology to solve existing needs and predicting future challenges;
- Collaborate with various Confluent Engineering groups to design, implement, and maintain platform security features;
- Develops deep understanding of tie-ins with other systems and platforms within the supported domains.
Requirements:
- Experience with standalone application platforms such as Spring Boot;
- Experience with popular open source Java libraries and frameworks;
- Bachelor’s degree in Computer Science, Software Engineering, MIS or equivalent combination of education and experience;
- Experience with relational and NoSQL database technologies including Oracle, SQL Server, PostgreSQL, Cassandra, and MongoDB;
- Working knowledge of HTML 5, CSS, JavaScript, and mainstream front-end frameworks (Angular, React) preferred;
- Working knowledge of UNIX/Linux, Windows, and scripting languages preferred;
- Responsible for the technical design and delivery of new Java projects using exciting, cutting-edge technology;
- Understanding of RESTful API development;
- Have experience in building Cloud native applications. Experience in cloud platforms like Docker, Kubernetes, OpenShift are a plus;
- 3+ years of hands-on programming experience in Java or Javascript;
- Working Experience with Version Control systems and strategies (GitHub, BitBucket, SVN, …);
- Solid Linux experience with networking and systems engineering skills;
- Strong development experience with Java 8, Spring framework, REST API’s and Linux;
- Working Experience writing and maintaining tools and scripts to support automation. (Bash);
- Hands on expertise in performance optimization of distributed systems.