Kickstart your career in tech

WeThinkCode_ is a software development training academy addressing the technical skills shortage in South Africa. Students enrolled in the academy undergo 16 months of full-time, on-campus training at one of our 5 campus locations in Gauteng, Western Cape and KwaZulu-Natal. At the end of the training students with the relevant pre-requisite accreditation earn an NQF 6 Occupational Certificate in Software Engineering.

Why WeThinkCode_ should be your first choice tertiary institution is that we make it our responsibility to place students on internships at the end of the training to help students secure their first permanent job.

WeThinkCode_ Student Experience

Expanding Access Nationally

WeThinkCode_ has launched the delivery of its proven curriculum and learning methodology at technical vocational education and training (TVET) colleges. This way more young people can access enrollment spaces and attend WeThinkCode_ closer to home.

The WeThinkCode_ programme is currently available at Ekurhuleni West Boksburg campus and Central Johannesburg Parktown campus.

With TVETs, you can now enroll in WeThinkCode_ in March or September.

91% of our students have been placed in permanent roles post graduation.

Our Curriculum

No prior coding experience is required to enrol at WeThinkCode_. In the first 8 months, students focus on the fundamentals of programming and software design patterns. This starts off in Python and transitions to Java. In the final 8 months of learning, students cover brownfields and specialised electives.

Month 1 - 4


This module introduces programming constructs that are the foundation of any kind of programming. To overcome the technical vocabulary of computer science, we present the fundamentals of programming in plain language.

Month 5 - 8

Object-Orientated Programming

This module is an introduction to software design through the lens of Object-Oriented Programming (OOP). In this module, we introduce Java as the programming language.

Month 9 - 12


Most software development jobs entail programming in an existing codebase. This kind of programming is known as brownfield development. This module, therefore, focuses on how to work on an existing codebase as a team.

Month 13 - 16


Students get to choose an elective to help them gain specialised skills. Currently we offer Automation QA, Mobile Application Development and Systems Integration.

Frequently asked questions

Our goal is to provide equal access to a higher education opportunity and remove as many barriers
as possible. We invite anyone between the ages of 17 and 35, who is able to study full-time for two
years at one of our campuses in South Africa to apply. No prior education or coding experience is

WeThinkCode_ is able to accept foreign applicants with permanent residency in South Africa;
asylum seeker visa status or a valid work permit for the three year period, including two years of
study and one year of work placement at a host employer.

Apply on our website by filling in your personal details and take our entrance assessment online or
book to use our campus facilities on an allocated assessment day. The assessment takes 1 hour to
complete and requires stable internet connection.

The bootcamp is a 6 day selection process. It is a practical, hands on experience where applicants are
presented with problems to solve both as individuals and in teams. The assessment is designed for
both those with prior coding experience as well as applicants that have never coded before. We
introduce applicants to new concepts and evaluate their ability to grasp the concepts and then apply
them to solve problems.

This is the process we use to source a diverse cohort of talented people without using traditional
methods such as prior education and CVs.

Applicants that have never coded before will begin with an introduction to programming basics
using an introductory programming language. Each day applicants will be required to complete a
series of exercises. At the end of each day, applicants will be required to complere a project
assessment that is used to evaluate the level of understanding and the ability to apply the concepts

Applicants with prior programming experience start with Python basics. They are required to
complete a series of exercises, projects and assessments designed to evaluate the level of technical
skills. This will be followed by a group project and exam.