Skip to main content

Training Directions for Newcomers

What you will learn

  • You will learn how to use the tools and technologies that are used in the industry alongside with their history and background.
  • There are tutorials and exercises to help you understand the concepts better.
  • Materials are divided into categories and topics to help you navigate through the content easily.

The Basics (Everyone should know)

  • Everyone should have basic understanding in computer and software which can be studied in background and history. Please read through every topic in this category.
  • Everyone should be able to use Linux and terminal. Please study every commands from Basic Linux Commands.
  • Build Systems are essential for every software engineer. Please study GNU Make from Build Systems.

Backend Path

For those who are interested in backend development, all training materials are available in Backend Training

Please complete the following tutorials in order:

  1. Beginner Tutorial
    1. Number Guessing Game: Guide to basic Go programming
    2. Movie Reviews Database using SQLite: Create a database and interact with it
    3. Movie Reviews App using GraphQL with gqlgen: Create a GraphQL server that interacts with a database
  2. Intermediate Tutorial
    1. HTTP Client: Create a simple CLI program that interacts with a server.
    2. Pokedex: Create a GraphQL server that interacts with a database.
    3. Container Training: Use docker to build images and run containers.

Submission

  • Submit your work to the mentor for review by creating a repository on your GitHub account. You may divide the repositories by tutorial or combine them into one repository.
  • Code review will be done by the mentor and feedback will be provided. Please make sure repositories are public so review can be done.
  • For each assignment, please schedule a meeting to demo your work to the mentor.
  • If you have any questions, please ask the mentor.

Frontend Path

For those who are interested in frontend development, all training materials are available in Frontend Training

Please study SvelteKit 5 Training and submit your work to the mentor for review.

Kubernetes, Helm, and Tilt.dev Training

Either you are interested in backend or frontend, you must learn how to use Kubernetes, Helm, and Tilt.dev. Please study this training guide.

Please complete all assignments in the training guide.

Submission

  • Submit your work to the mentor for review by creating a repository on your GitHub account. You may divide the repositories by tutorial or combine them into one repository.
  • Code review will be done by the mentor and feedback will be provided. Please make sure repositories are public so review can be done.
  • For each assignment, please schedule a meeting to demo your work to the mentor.
  • If you have any questions, please ask the mentor.

Bonus Task: Understanding the Market & Competitors

Before starting, we’d like you to take some time to explore the market we’re entering. This will help you get a better sense of what we’re building and why.

  • Design & Collaboration (Figma) Experiment with Figma: Create a couple designs, turn them into components, and explore libraries. Pay attention to how collaboration works—components, variables, libraries, and team workflows.

  • E-Commerce (Shopify) Explore Shopify: the industry gold standard for e-commerce. Look into their site generator and admin panels.

  • Web Editors (Wix, Webflow, Framer): Try out Wix, Webflow, and Framer to see how they handle website building. Then look at how they're handling e-Commerce integration. Compare the editing experience against Figma, and e-Commerce against Shopify.

Bonus Task: Deploy your own portfolio website

This assignment is recommended for everyone to complete, especially newbies who has never deployed a website before.

Please deploy your own portfolio website with the following requirements:

  • Use Svelte 5 as the frontend framework.
  • Deploy your website online on a free hosting domain. Some examples are Netlify, Vercel, or GitHub Pages.
  • Portfolio should contain the following pages:
    • Home
    • About
    • Projects
    • Contact
  • The website should be multi-page and responsive.
  • Apply your own design and creativity to the website.