Full Stack Engineer

Full Time
Interschools Coding Competition
Description

Mid-Level to Senior | Full Time | Full Stack Engineer.

The Role

We are looking for a Fullstack Engineer who can own production software end to end.

At ISCC, software is not a supporting function. It is the infrastructure behind the organisation.

Our platforms run the Interschools Coding Competition, where hundreds of schools and thousands of students participate in online competitions, registration, team selection, training and qualification stages.

The same engineering team builds and operates our technology training platform, which delivers our tech programs. You will work across both. That means building the database schema, API, business logic, frontend, background jobs and deployment and then being responsible for what happens when the system goes into production. You will be given problems to solve rather than perfectly specified tickets. We expect you to understand the problem, ask the right questions, design the solution, build it, test it, deploy it and monitor what happens afterwards.

Why this role is different.

Our systems have real deadlines and real users.

When hundreds of schools register simultaneously, the system has to work.

When thousands of students sit for a competition, the platform has to work.

When a national event is approaching, “we’ll fix it next sprint” isn’t an option.

Our production data is growing rapidly, and the systems you build will need to remain reliable as that growth continues.

You’ll therefore get exposure to problems that are difficult to simulate in a typical small product:

  • Traffic spikes and concurrency
  • PostgreSQL performance and data growth
  • Caching and background processing
  • Payment integrations
  • Authentication and authorization
  • Production debugging
  • Infrastructure and deployments
  • Reliability and observability
  • Systems used by non-technical users at scale

What you will own

Product Engineering: Build and ship features across:

  • The ISCC competition platform
  • Student and school dashboards
  • School registration and team management
  • Competition preparation and assessment systems
  • The learning management platform
  • Course catalogues and learner dashboards
  • Progress tracking
  • Enrolment and checkout
  • Freemium and paid-content access
  • Internal administration tools

You will work across both backend and frontend.

Backend: Design and maintain production systems using:

  • Python
  • Django
  • Django REST Framework
  • PostgreSQL
  • Redis

You should be comfortable with:

  • Database and schema design
  • Django ORM
  • Query optimization
  • Indexing
  • Transactions and concurrency
  • Authentication and authorization
  • API design
  • Migrations on live databases
  • Background jobs
  • Caching
  • Data integrity
  • Automated testing

FrontEnd: Build polished, reliable interfaces using:

  • React
  • Next.js
  • TypeScript / JavaScript
  • HTML/CSS

You should understand:

  • Next.js App Router
  • Server vs client components
  • Data fetching
  • Forms and validation
  • State management
  • Authentication flows
  • Loading and error states
  • Responsive interfaces
  • Performance
  • Accessibility fundamentals

Infrastructure and production:

Our current infrastructure includes Docker Compose, Nginx, Linux and VPS infrastructure which you are expected to comfortably work with.

You’ll integrate and maintain external services including:

  • Mobile money and card payments
  • Email providers
  • SMS providers
  • Authentication services
  • Other third-party APIs

Must Have:

You have 4+ years of professional software engineering experience, or equivalent demonstrated experience building and operating production systems.

Strong commercial experience with:

  • Python
  • Django
  • Django REST Framework
  • PostgreSQL

You should be able to explain and demonstrate query optimization, indexing, transactions, migrations and API design.

Strong experience with:

  • React
  • Next.js
  • TypeScript or modern JavaScript

Production Dedugging: You can work comfortably in Linux and investigate production problems using:

  • Logs
  • Database queries
  • Metrics
  • Application traces
  • System resources
  • Network behaviour

Communication : You can explain technical decisions clearly to engineers, founders, partners, school administrators and other non-technical stakeholders.

The following aren’t mandatory, but will make your application stronger:

  • Redis in production
  • Celery or another task queue
  • Payment gateway integrations
  • CI/CD
  • Automated testing
  • Sentry or another error-monitoring platform
  • Performance optimization
  • High-traffic applications
  • Education technology
  • E-learning platforms
  • Systems involving schools, payments or large user populations
  • Mentoring junior engineers
  • Open-source contributions

What we offer

  • Medical insurance.
  • Competitive Compensation.
  • Full-time permanent employment.
  • Free access to ISCC technology programs.
  • Budget for relevant certifications and professional development.
  • Paid annual leave after meeting HR requirements.
  • Breakfast and Lunch.

How to Apply

Apply through LinkedIn or send your CV and portfolio/GitHub links to:

info@interschoolscoding.com

In your application, answer this question:

What is the hardest production bug or incident you have personally diagnosed? What did you initially think was wrong, what evidence did you gather, what was the actual root cause, and what did you change afterwards?