Java developer
The Java Developer can build high-performing, scalable, enterprise-grade applications.
He can be part of a talented software team that works on mission-critical applications.
Java developer roles and responsibilities include managing Java / Java EE application development while providing expertise in the full software development lifecycle, from concept and design to testing.
Java developer responsibilities include designing, developing and delivering high-volume, low-latency applications for mission-critical systems.
- Designing and developing high-volume, low-latency applications for mission-critical systems and delivering high-availability and performance
- Contributing in all phases of the development lifecycle
- Writing well designed, testable, efficient code
Basic skills
- Excellent experience with Java/J2EE technologies like Servlets, JSP, JSTL, Java Beans, J2EE Patterns
- STL, JSTL, SOAP, JAXB, J2EE, JSP, Web services
- Design patterns
- Algorithms
- Build tools: Maven, Ant
- IDEs: Eclipse, IntelliJIdea, Netbeans
Databases and ORMs
- Hibernate
- JPA
- iBatis
Testing and CI
JUnit, Cucumber, Selenium, Jenkins
- BS/MS degree in Computer Science, Engineering or a related subject
- Proven hands-on Software Development experience
- Proven working experience in Java development
- Hands on experience in designing and developing applications using Java EE platforms
- Object Oriented analysis and design using common design patterns.
- Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management etc)
- Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate)
- Experience in the Spring Framework
- Experience as a Sun Certified Java Developer
- Experience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC)
- Experience with test-driven development
Embed systems
Data Analysis
- Apache Spark
- Hadoop
Web development
JSF, JSP
Frontend technologies: HTML5, CSS, Javascript, NodeJS, Angular, React
Artificial Intelligence
Duties
- Contribute in all phases of the development lifecycle
- Write well designed, testable, efficient code
- Ensure designs are in compliance with specifications
- Prepare and produce releases of software components
- Support continuous improvement by investigating alternatives and technologies and presenting these for architectural review