Job Description
Responsibilities
- Contribute to all stages of the software development lifecycle
- Design, implement and maintain Java-based applications that can be high-volume and low-latency
- Analyze user requirements to define business objectives
- Envisioning system features and functionality
- Define application objectives and functionality
- Ensure application designs conform with business goals
- Develop and test software
- Identify and resolve any technical issues arising
- Create detailed design documentation
- Propose changes to current Java infrastructure
- Develop technical designs for application development
- Develop multimedia applications
- Write well-designed, testable code
- Conducting software analysis, programming, testing, and debugging
- Manage Java and Java EE application development
- Develop documentation to help users
- Transforming requirements into stipulations
- Prepare and produce releases of software components
- Support continuous improvement, investigating alternatives and technologies, and presenting for architectural review
Qualification
- Bachelor’s Degree with more than 4 years of experience in programming with Java
- Proficiency in Java, with a good understanding of its ecosystems
- Sound knowledge of Object-Oriented Programming (OOP) Patterns and Concepts
- Familiarity with different design and architectural patterns
- Skill for writing reusable Java libraries
- Knowhow of Java concurrency patterns
- Basic Understanding of the concepts of MVC (Model-View-Controller) Pattern, JDBC (Java Database Connectivity), and RESTful web services
- Experience in working with popular web application frameworks like Play and Spark
- Relevant Knowledge of Java GUI frameworks like Swing, SWT, AWT according to project requirements
- Ability to write clean, readable Java code
- Basic knowhow of class loading mechanism in Java
- Experience in handling external and embedded databases
- Understanding basic design principles behind a scalable application
- Skilled at creating database schemas that characterize and support business processes
- Basic knowledge of JVM (Java Virtual Machine), its drawbacks, weaknesses, and workarounds
- Implementing automated testing platforms and unit tests
- In-depth knowledge of code versioning tools, for instance, Git
- Understanding of building tools like Ant, Maven, Gradle, etc
- Expertise in continuous integration
- JavaServer pages (JSP) and servlets
- Web frameworks like Struts and Spring.
Interested and qualified candidates should send their Cover Letter, CV and recent Passport Photograph to: jobs@pgconsultingng.com cc: ayomide@tekrecruiters.com.ng using the Job Title as the subject of the mail.