- Location
- City of Cape Town Metropolitan Municipality, Western Cape
- Type
- Full-time
- Department
- Engineering
- Experience
- 2+ years
- Closing date
- Today
- Source
- Vincere
Description
Full Stack Software Developer
A growing company is looking for Full Stack Software Engineer at a mid-junior to intermediate level to join its growing development team based in Bellville. The engineering team is currently moving onto a new architectural foundation, centred around a deliberately designed data layer and an event-driven backend on Google Cloud.
The successful candidates will work alongside the Solution Architect and senior engineers to help build and scale this new platform. This is an excellent opportunity for developers who want to work with modern cloud technologies, real-time data, event-driven systems and AI, while developing their skills under experienced technical leadership
Responsibilities: • Build features across the full technology stack, including NestJS backend services and React applications. • Develop and maintain APIs and backend services using TypeScript and NestJS. • Build responsive and reliable frontend functionality using React and TypeScript. • Design and maintain Prisma schemas and database migrations. • Work with PostgreSQL and write direct SQL where appropriate. • Develop and maintain Pub/Sub event consumers, considering retries, failures and duplicate messages. • Implement typed contracts and Zod schemas across server and client applications. • Contribute to product development using GCP Cloud AI. • Write clean, maintainable and testable code. • Participate in code reviews and learn from feedback. • Review other developers' code as experience develops. • Work closely with senior engineers and solution architects to build the company's new technical architecture. • Continuously improve technical knowledge, development practices and understanding of data modelling. Requirements: • Approximately 2–4 years professional software development experience, or less with demonstrable technical
depth. • Strong working knowledge of TypeScript and React. • Comfortable working with backend code. • Good understanding of SQL and relational databases. • Ability to write and understand SQL joins. • Understanding of relational concepts such as foreign keys and data relationships. • Experience building and maintaining web applications. • Strong attention to correctness, reliability and edge cases. • Ability to think about scenarios such as duplicate requests, API failures and retries. • Strong problem-solving and analytical skills. • Excellent communication and collaboration skills. What they’re looking for: • Asks why rather than simply following instructions. • Takes code review and constructive feedback positively. • Thinks carefully about reliability, edge cases and failure scenarios. • Is interested in becoming strong at data modelling and backend architecture. • Can work independently while knowing when to ask for guidance. • Enjoys learning new technologies and solving complex problems. • Has genuine interest in both frontend and backend development