Job Description
<p>The Full-Stack Web Developer works closely with the Senior Full-Stack Web Developer and the development team to plan and create software systems in support of the e-platforms, mobile platforms and virtual environment by identifying and analyzing user needs and requirements, and then designing, developing, testing, debugging and implementing software solutions based on those demands.&nbsp;</p>
Key and Critical Responsibilities
<div>- Collaborate with stakeholders to gather and analyse user requirements, developing specifications for web-based solutions to address business needs.</div><div>- Design, develop, and maintain responsive and scalable web applications using modern front-end and back-end technologies.</div><div>- Implement and maintain RESTful APIs to support application functionality and integrate with other systems.</div><div>- Develop and maintain coding standards, best practices, and documentation for web development projects.</div><div>- Conduct code reviews and participate in pair programming sessions to ensure code quality and knowledge sharing.</div><div>- Engage in the full software development life cycle, including requirements analysis, design, development, testing, deployment, and maintenance of web applications.</div><div>- Create and maintain comprehensive documentation, including technical specifications, user guides, and API documentation.</div><div>- Develop and implement database schemas, optimizing for performance and scalability.</div><div>- Troubleshoot, debug, and optimize web applications for maximum performance and user experience.</div><div>- Implement security best practices to protect web applications and user data.</div><div>- Develop and execute comprehensive testing strategies, including unit tests, integration tests, and end-to-end tests for web applications.</div><div>- Implement security best practices to protect web applications and user data.</div><div>- Develop and execute comprehensive testing strategies, including unit tests, integration tests, and end-to-end tests for web applications.</div><div>- Implement and maintain version control systems and contribute to CI/CI pipelines for efficient development and deployment processes.</div><div>- Monitor and analyse application performance, making data-driven recommendations for improvements.</div><div>- Stay updated with emerging web technologies and industry trends, applying them where appropriate to enhance development processes and application capabilities.</div><div>- Collaborate with the team to develop and maintain disaster recovery plans for web applications and associated data.</div><div>- Ensure the confidentiality, integrity, and availability of web applications and sensitive data.</div><div>- Participate in agile development processes, including sprint planning, daily stand-ups, and retrospectives.</div><div>- Contribute to the evaluation and selection of development tools and third-party services to enhance the web development process.</div><div>- Attend meetings and provide regular status updates on assigned projects and tasks.</div><div>- Performs related duties as required to support the overall goals of the web development team and the organization.</div>
Key Competencies
<b><u>KNOWLEDGE </u></b><div>- Good knowledge of professional Full-Stack Web Developing and best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.</div><div>- Sound knowledge of software development and maintenance processes.</div><div>- Good knowledge of project management tools and techniques.</div><div>- Good knowledge of the principles, tools and techniques required for the management and control of ICT systems and processes.</div><div>- Sound understanding of structured programming principles, system analysis techniques, system design, documentation, industry standard testing principles, system implementation, user training and follow-up.</div><div>- Excellent knowledge of relational databases, SQL and ORM technologies.</div><div>- Sound knowledge of database administration and data modelling terms, concepts, and practices.</div><div><br></div><div> </div><div><b><u>SKILLS AND ABILITIES </u></b></div><div>- Must have a global outlook with the ability to identify and assess trends and changes in the global environment, particularly as they relate to Court information systems, and information communications technologies that enhance and support business continuity in the court environment.</div><div>- Ability to document requirements and specifications.</div><div>- Strong proficiency in front-end technologies: HTML5, CSS3, JavaScript (ES6+), and modern frameworks (e.g., React, Angular, or Vue.js)</div><div>- Solid experience with back-end technologies: Node.js, Python, or similar, along with relevant frameworks (e.g., Express, Django).</div><div>- Proficiency in working with relational databases (e.g., PostgreSQL, MySQL) and NoSQL databases (e.g., MongoDB)</div><div>- Experience with version control systems, preferably Git.</div><div>- Demonstrated ability to design and implement RESTful APIs</div><div>- Strong understanding of web security best practices and data protection principles.</div><div>- Proven track record of building responsive and cross-browser compatible web applications.</div><div>- Ability to write clean, efficient, and well-documented code adhering to best practices and coding standards.</div><div>- Experience with test-driven development.</div><div>- Ability to prioritize activities and deliver projects on time and within budget.</div><div>- Must have a high level of energy and drive.</div><div>- Must be able to work collaboratively as a member of inter and intra-departmental teams.</div><div>- Ability to build trust, credibility and effective working relationships with all levels of staff within the organization, and with external stakeholders.</div><div>- Ability to communicate effectively orally and in writing to both technical and non-technical audiences.</div><div>- Ability to multitask.</div><div>- Creative problem-solving skills.</div><div>- Strong skills of observation.</div><div>- Strong ethics.</div><div><br></div><div> </div><div><b><u>MINIMUM EXPERIENCE AND TRAINING </u></b></div><div><b>One of the following educational or experience requirements:</b></div><div>- Bachelors degree in Computer Science, Software Engineering, or a related field</div><div>- Equivalent work experience or demonstrable expertise in full stack web development.</div><div><br></div><div><b>Additionally, the following skill set:</b></div><div>- Minimum of three (3) years experience in full stack web development, either in a professional setting or through substantial project work.</div><div>- Comprehensive understanding of the Software Development Life Cycle (SDLC) and experience working within various SDLC methodologies (e.g., Agile, Scrum, Waterfall).</div><div>- Familiarity with different stages of SDLC including requirements gathering, design, development, testing, deployment, and maintenance.</div><div>- Experience participating in code reviews and contributing to improving development processes.</div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div>
