Junior Fullstack Developer
Must-have:TypeScriptGoCSSReactNext.jsTailwindDockerFrontendBackendSecurity
Job Description
- Build and maintain pages and components in Next.js: App Router, server and client components, data fetching, and responsive Tailwind layouts.
- Write Go HTTP handlers and service logic: REST endpoints, request validation, error handling, and JSON serialisation.
- Work with PostgreSQL: write queries, design simple schemas, and add or update migrations.
- Keep the API contract between frontend and backend consistent — coordinate changes and update both sides in the same PR.
- Write unit and integration tests for both UI components and Go handlers.
- Keep code documented on both layers — component props and usage on the frontend, function signatures and behaviour on the backend.
- Participate in code review, raise issues clearly, and verify fixes before closing a ticket.
- Run services locally with Docker and deploy to the Nomad environment following the team's release
Requirement: Frontend
- Next.js at a working level: pages, layouts, server and client components, data fetching with the App Router, and basic routing.
- TypeScript: types, interfaces, and basic generics; understands why any is a code smell.
- React fundamentals: hooks (useState, useEffect, useContext), component composition, and avoiding unnecessary re-renders.
- Tailwind CSS or comparable utility-first CSS: can build a responsive layout independently.
- Consuming REST APIs: fetch or a data-fetching library, handling loading, error, and empty states.
Backend
- Go at a working level: can write an HTTP handler with net/http or a lightweight router (Chi, Gin, or similar), parse a request body, validate input, and return a JSON response.
- Go fundamentals: structs, interfaces, error handling (error return values, not panics), goroutines at a basic level, and understanding why Go errors are explicit.
- PostgreSQL: can write SELECT, INSERT, UPDATE queries; understands joins, WHERE clauses, and why parameterised queries matter for security.
- Database migrations: has used a migration tool (golang-migrate, Flyway, or similar) to apply schema changes safely.
Skills: Next.Js, TypeScript, PostgreSQL, Go / Golang