Engages in identifying, designing, installing and testing a software system they have built for a company from the ground up. It can range from creating internal programmes that can help businesses be more efficient to producing systems that can be sold on the open market.
Produce application architecture design translated from high-level product/user requirements
Design, develop and deliver code that can support new product feature/enhancements in an agile environment
Develop customer-facing applications using RESTful APIs
Create database schemas that represent and support new products/ enhancements
Maintain quality and ensure optimum performance of developed applications.
Collaborate in design and development with the rest of the team.
Maintain code integrity, organization, versioning, and apply object-oriented design principles
Carry out unit tests of developed applications as well as set up automated testing of applications to ensure correctness, robustness, and scalability
Work with front-end designers and converting designs to visual elements.
Maintain code and application security at all times. Ensure data protection.
Develop applications in back-end programming languages like Java, .NET, PHP as well as web technologies such as HTML, CSS, JavaScript, Jquery
Guide and mentor new engineers and interns
Perform other duties assigned by team lead or engineering manager