Job Description:
We are seeking a skilled software engineer to join our team. This role will involve the design, development, creation, integration, performance, and user testing of new and amended programs from supplied specifications in accordance with agreed standards.
Key Responsibilities:
1. Design complex applications using Object Oriented Design techniques
2. Employ design patterns
3. Develop superior core Java language knowledge
4. Utilize XML in conjunction with Java applications
5. Work with Java server side technologies: Web Services, Java Message Services (JMS), Java Database Connections (JDBC), Enterprise Java Beans (EJB), J2EE Containers
6. Experience with SQL
7. Develop expertise in Java interface technologies: Java Server Pages (JSP), JSTL, Swing, HTML, Java Script, AJAX
8. Work with Java Open Source frameworks: JUnit, Ant, Struts, Hibernate, Spring | J Monk
9. Familiarity with Java IDEs (Eclipse, Intelli J) | Or | .net
10. Demonstrate ability to design complex applications using Object Oriented Design techniques
11. Understand and employ design patterns
12. Develop superior knowledge of C# and the .NET core libraries
13. Understand and utilize XML in conjunction with .NET applications
14. Experience with .NET server side technologies: Web Services, ADO.NET, SQL
15. Develop expertise in .NET user interface technologies: ASP.NET, Windows Forms, Eventing, HTML, Java Script, AJAX, MS Office Integration, 3rd Party Widget Libraries
16. Experience with Open Source tools: NUnit & Nant
17. Familiarity with real-time knowledge of Apache Kafka, Apache Flink, messaging queue
18. Familiarity with CI/CD pipelines using Jenkins, Maven
19. Design and build RESTful APIs with Spring Boot
],