The role is responsible for analysing, designing, developing, and maintaining custom software solutions based on business and user requirements. The position also supports and enhances existing systems while ensuring high-quality, scalable, and well-documented code.
Key Responsibilities:
- Analyse, design, and develop new software applications and system enhancements
- Maintain, support, and optimise existing software solutions
- Write efficient, scalable, and well-structured code
- Perform code reviews and ensure adherence to development standards
- Mentor and support junior developers
- Assist peers with technical and application-related challenges
- Participate in system architecture, analysis, and solution design
- Support internal and external users
- Ensure system stability, performance, and reliability
- Conduct unit testing and support testing processes
- Maintain accurate workflow, process flow, and technical documentation
- Communicate closely with business stakeholders to translate requirements into technical solutions
- Deliver technical presentations when required
- Meet agreed development timelines and delivery commitments
- Participate in after-hours support and 24-hour standby when required
Qualifications and Experience
- 2–3 years’ experience in a software development role
- Degree or equivalent qualification in Computer Science, Information Technology, or a related field
- Experience with system analysis and object-oriented design principle
Key Skills and Competencies
- Java and C# development
- Spring, Hibernate, JPA, and Maven
- RESTful services
- PostgreSQL and MySQL databases
- Linux (RedHat, Ubuntu) and Windows Services
- Git version control
- Agile development methodologies
- Strong problem-solving, analytical, and communication skill
Working Relationships
- Internal: Business stakeholders, IT teams, and management
- External: Customers and service users