Technical and Professional Onboarding
Let’s equipping our software engineering team!
Week One
Tuesday, August 26 – Friday, August 30
Monday: No class Wednesday Class: Technical preparation for joining a software startup Wednesday Lab: Technical preparation for joining a software startup Friday: Technical and professional preparation for joining a software startup
Onboarding Tasks
- Join the Developer Development Discord
- Install the uv tools to support Python development
- Using
uv, install Python 3.11, 3.12, 3.13, and/or 3.14 on your laptop- Install the full Python version supporting C and Rust binding and SQLite 3
- Ensure that you can switch between different versions of Python
- Use your operating system’s package manager or asdf-vm or mise to install the node package manager and all JavaScript programming tools
- Access both the Fuzzing Book (FB) and the Debugging Book (DB)
- Fork the GitHub repositories for these two books
- Clone the forked GitHub repositories to your workstation
- Use
uv pipto install each books’ dependencies - Run a local Jupyter Lab server that can access a book’s Jupyter notebooks
- Correctly run the Jupyter notebook for at least one chapter in FB and DB
- Locate and bookmark the Software Engineering at Google book
- Install the Quarto system for scientific and technical publishing
- Learn how to use Quarto to create a web site with executable Python code
- Install Quarto’s plugin for VSCode or your chosen text editor
- Learn how to clone and run the source code in the course Web site
- Practice using and begin to understand the input, output, and behavior of commands like
uv run quarto previewanduv run quarto render - Practice all of tasks in the GitHub Flow model for software development