Skip to content

Latest commit

 

History

History
233 lines (180 loc) · 9.73 KB

internship-dev-2024-2.md

File metadata and controls

233 lines (180 loc) · 9.73 KB

intro

This is a rough plan of the development internship program for 2024 -8 to 10 weeks program-. The intern need to be able to reason about the code, and be able to write tests (units and integration), then they should be able to contribute to the daily work with the team.

Week 0

In this week we spend some time to get familiar with the basics of linux, git, shell, and how to read the documentation

extra

Week 1

We get our feet with learning the fundamentals of Go, and start developing small utilities in Go.

Week 2

We introduce you to the testing, writing unit tests, configuring github workflows.

Week 3

In this week we develop a small http service and we cover how to test it and how to build a client to consume its api

Extra

Week 4

In this week we get familiar with docker and docker compose, what they do, and how to build a docker image, and how to reduce its size. Then we go through REST API, Swagger, and Postman. and we will build a small client that consumes the pokemon Restful API service.

Resources

Week 5

Here we introduce you to the concept of MVC.

Week 6

In this week we will redo the project as SPA, by providing two services: an API service and a frontend that consumes that API -next week-

  • Secret Note API #152

Week 7

Resources

Testing session: https://docs.google.com/presentation/d/1ljUyCXWN-ZF3FyNDUOYXoyOrEagy_DoXWeL5wDMF47Y/edit?usp=sharing

Week 8 (onboarding to threefold)

Starting from that week the intern should be able to write testable code and can be introduced to our platform and projects. Best intro the platform by manually testing the capabilities and reporting issues on the normal of the enduser.

  • Intro to Codescalers and TFGrid Platform
  • How to write a bug report https://www.softwaretestinghelp.com/how-to-write-good-bug-report/
  • Manual Testing
  • Namespaces, CGroups, Docker
  • The Dashboard and deploying your first machine on the threefold grid)
  • Terraform and deploying your virtual machines machines on the threefold grid)
  • Rust fundamentals
  • Manually Testing the platform (intro to testlodge -qa tool we use to develop and track our tests-)

Week 9-end of internship week 10 distributed on teams (sdk-go, zos, sdk-ts, sdk-dart)

  • 4 solutions
  • GPU services integration *
  • ZOS service rewrites in rust
  • Freeflow twin
  • Threefold Connect *
  • Planetary Desktop/mobile App
  • Increase code coverage
  • Deployments web builder (drag/drop)
  • IaC
  • heroku like system on the grid maybe? gridify pushing forward

Extra tasks

Sessions

daily work

Software development process / testing

networking

linux

Raft/Distributed systems

binary serialization

Optional:

  • Kubernetes
  • Helm Charts
  • Blockchain (substrate, cosmos, solidity?)