Fullstack Engineer (JavaScript or TypeScript, Node.js, Python, Java, AWS)
Job description
Full Stack Software Engineer
What You Will Be Working OnAs a Full Stack Software Engineer, you will contribute to the design, development, and continuous improvement of web applications that support school operations and management.
You will work across both frontend and backend development, helping to build secure, scalable, and user-friendly solutions that improve efficiency, reduce manual effort, and provide better visibility into operational processes.
This role is ideal for engineers who enjoy building products end-to-end, working directly with users, and delivering solutions that create tangible impact in the education sector.
Key Responsibilities
1. Product Development- Design, develop, test, and maintain modern web applications used by schools and our Client’s stakeholders.
- Build new product features and enhance existing capabilities based on user and business needs.
- Translate user requirements into secure, scalable, and maintainable software solutions.
- Contribute across the full software development lifecycle, from design and implementation to deployment and maintenance.
- Develop responsive, accessible, and intuitive user interfaces using modern frontend technologies.
- Collaborate closely with designers and product managers to deliver high-quality user experiences.
- Build reusable UI components and optimise application performance and usability.
- Develop and maintain APIs, backend services, and business logic supporting application workflows.
- Implement authentication, authorisation, and role-based access controls.
- Integrate with databases, enterprise systems, and external services where required.
- Ensure applications are secure, reliable, and scalable.
- Design and develop data models, application workflows, and business process automation.
- Build features that improve operational visibility, task management, reporting, and decision-making.
- Ensure data integrity, security, and traceability across the application lifecycle.
- Implement automated testing and secure coding practices.
- Participate in code reviews and contribute to engineering best practices.
- Support CI/CD pipelines, deployment automation, monitoring, and troubleshooting activities.
- Continuously improve application reliability, performance, and maintainability.
- Engage users to understand challenges, validate solutions, and gather feedback.
- Participate in prototyping, usability testing, and iterative product development.
- Identify opportunities to improve user experience, business processes, and operational outcomes.
Experience
- Minimum 3–5 years of experience in software engineering, full stack development, or application development.
- Demonstrated experience delivering production-grade web applications and digital products.
- Experience working in Agile or product-oriented development teams.
Frontend Development
- Strong proficiency in JavaScript or TypeScript.
- Experience with modern frontend frameworks such as:
- React
- Next.js
- Angular
- Vue.js
- Familiarity with:
- Responsive design
- Accessibility standards
- Modern web development practices
- Experience developing APIs and backend services using technologies such as:
- Node.js
- Python
- Java
- .NET
- Go
- Good understanding of:
- RESTful APIs
- Service-oriented architectures
- Experience implementing:
- Authentication
- Authorisation
- Security controls
- Experience working with relational databases such as:
- PostgreSQL
- MySQL
- SQL Server
- Understanding of:
- Data modelling
- Database design
- Query optimisation
- Familiarity with cloud platforms such as:
- Azure
- AWS
- Experience with the following will be advantageous:
- Git
- CI/CD pipelines
- Automated testing
- Containerisation
- Understanding of:
- Application monitoring
- Operational support practices
- Ability to translate user needs into practical software solutions.
- Comfortable working in environments with evolving requirements and ambiguity.
- Strong appreciation for:
- Usability
- User experience
- Product quality
- Is passionate about using technology to solve real-world problems.
- Takes ownership and demonstrates accountability for delivering quality outcomes.
- Enjoys learning new technologies and continuously improving their craft.
- Is curious, proactive, and willing to challenge assumptions constructively.
- Communicates effectively with both technical and non-technical stakeholders.
- Works well in cross-functional teams and values collaboration.
- Balances technical excellence with pragmatism and delivery.
- Has empathy for users and a strong desire to improve their experience.
Work Location: In person
Interested in this role?