Major Areas of Responsibility:
Conducting software engineering assignments alone or in collaboration with the R&D team
Responsible for desktop and mobile software UI design
Responsible for coding software modules
Responsible for testing software modules
Preparing and presenting technical and/or manual documentation
Delivering work packages to agreed timelines
Contributing towards improving software development framework
Troubleshoot, debug and upgrade existing systems
Maintain clear communication channels with business support functions relative to the role and as per process/system requirements
Compliance with Workplace Health and Safety policies and procedures, participation in audits and compliance with instructions given in respect to the health and safety of himself / herself and the safety of others
Other duties as required from time to time.
Knowledge & Experience Required:
Qualifications and Experience
Bachelor’s degree in Information Technology, Computer Science or similar
A minimum of 5-7 years’ experience as a Full Stack Developer or similar role
Critical Knowledge, Skills and Abilities
Understanding and application of Object-Oriented Design (OOD), Domain Driven Design (DDD) andrelated software design concepts
Experience in MVVM
Experience developing desktop and mobile applications
Familiarity with common stacks
Familiarity with Agile software development methodologies and their application in a teamenvironment.
Understanding of the application of Design Patterns to software development.
Ability to write unit test cases
High level of analytical thinking
Strong time management skills to ensure project delivery adherence.
Desire to expand own knowledge and skill set as well as sharing knowledge with other teammembers
Familiarity with databases (e.g., MySQL, MongoDB, Postgres), web servers (e.g., Apache) and UI/UX design
Software module testing
Limited travel required to fulfil the requirements of this position.