Open Chapter Overview

Forward

Industry-Standard Libraries & Tools

Next Module

You could be an amazing programmer, but if you’re experienced in the wrong areas, you still might not attract attention from companies. Industry-standard languages and tools are pieces of software that teams actually use to build products and services. As a result, recruiters and hiring managers will look out for candidates who already have these skills, which will give them a boost in the application process.

Tech is a constantly-evolving industry, which means that the industry-standard tools are too. Some stick around for years, while others are constantly replaced as new packages and libraries are released.

These tools are NOT requirements, but it’s a good idea to be familiar with at least one of them in each category. Once you figure out which area of tech you enjoy most, you can dive more deeply into the related tools. When you do projects, keep these in mind, as experience using them is very valuable to an employer.

Software Engineering - All Roles

Github

Github is a version control platform that makes building software much easier. Almost every company uses Github to store its code. The tool’s name comes from Git, which is a more general version control system (Github is the most common implementation of the system).

Learn Github

Command Line Interface (CLI)

Using the command line is a necessary skill as a software engineer. It will help you run your code, navigate your computer’s file structure, configure virtual environments, and more. The command line is part of your computer’s operating system and is accessed through the terminal.  

Learn CLI

VS Code

VS Code is made by Microsoft and is among the most popular Integrated Development Environments (IDE). Simply put, it’s an app that lets you run code in essentially every language. It also includes a built-in terminal, thousands of extensions for various purposes, and tons of customization. Across the board, developers rave about VS Code.

Learn VS Code

AWS/Google Cloud/Azure

These three platforms are the most common Cloud platforms. They each contain a host of services including data/file storage, cloud computing, website hosting, remote functions, and so much more. Companies use them for everything they do, so understanding how they work is a great skill to have.

Learn AWS

Learn GCP

Learn Azure

Docker

Docker is a platform that allows developers to build applications in containers. Containers package applications with the other resources they rely on to ensure that the code can be run on any computer.

Learn Docker

Selenium WebDriver

Selenium is a tool that allows for automated interactions with websites, making it easy to test web-based applications. It’s compatible with all popular browsers.

Learn Selenium

Software Engineering - Web Development

React

React is a web development library created by Meta that combines Javascript with HTML-like structures to make building complex websites much easier. Its main feature is a refresh algorithm that only updates the on-screen features that have recently changed, which makes React sites load much more quickly. The framework also contains a ton of other great features, documentation, and support, which is why it’s become the gold standard for front-end development.

Learn React

Javascript/Typescript 

Javascript is the #1 programming language used by developers. In web development, it can add interactivity to static sites, fetch data, and dynamically load content. Typescript is Javascript’s statically-typed sibling, which basically means there are stricter rules about how to write the code. It’s more of a headache to use Typescript upfront, but protects against bugs in the long run. 

Learn Javascript

Learn Typescript

Mobile Development

Android Development
Android Studio

An IDE specifically designed for Android Development. The default language is Kotlin, which is very similar to Java.

Learn Android Studio

Kotlin

A relatively new language, Kotlin is now the preferred way to develop android applications. 

Learn Kotlin

Jetpack Compose

UI toolkit that creates components and layouts for Android applications.

Learn Jetpack Compose

Apple OS Development

XCode

XCode is an IDE specifically designed for development on all types of Apple devices (macOS, IOS, iPadOS, watchOS, tvOS, and visionOS). XCode uses Swift, which is relatively similar to Java and JavaScript.

Learn XCode

Game Development

Unity

Unity is a game development platform that can be used to create 2D and 3D games, simulations, and more. Unity is fairly easy to learn and uses C# for scripting (programming game logic, object behavior, etc.).

Learn Unity

Unreal Engine

Unreal Engine is a rival 3D game development engine to Unity, developed by Epic Games. It’s used for Fortnite, Sea of Thieves, and other popular games. Unreal Engine is the better choice for complicated and high-tech games, while Unity is better for simple projects and demos.

Learn Unreal Engine

Team Management Tools

Jira

Jira is a project management platform that helps teams manage tasks, report bugs, and collaborate. It can be overwhelming at first because of the quantity of features, but it’s important to get a good sense of the basics.

Learn Jira

Trello

Trello is a project management tool just like Jira, but it’s a lot simpler to use. Its main feature is a Kanban-style board that contains different columns for tasks (usually something like To Do, In Progress, and Completed).

Learn Trello

Slack

Slack is a communication platform designed for teams, allowing real-time messaging, file sharing, and collaboration through organized channels and direct messages. It integrates with various tools and services, making it a central hub for workplace communication and project management.

Learn Slack

Data Analytics 

Jupyter Notebook

Jupyter Notebook is an open-source web application that allows users to create and share documents containing live code, equations, visualizations, and narrative text, making it ideal for interactive data analysis and scientific computing. It supports multiple programming languages, with Python being the most commonly used.

Learn Jupyter Notebook

SQL

SQL (Structured Query Language) is a standardized programming language used for managing and querying relational databases, allowing users to efficiently extract, manipulate, and analyze data. It is essential for working with structured data and is widely used in data analysis and database management.

Learn SQL

Tensorflow

TensorFlow is a publicly-available machine learning framework developed by Google that allows users to build, train, and deploy deep learning models, offering flexibility through its high-level APIs and efficient execution on CPUs, GPUs, and TPUs. It is widely used for large-scale machine learning tasks and production-level deployments.

Learn Tensorflow

PyTorch

PyTorch is an open-source deep learning framework developed by Facebook that provides a dynamic computation graph, making it intuitive and flexible for building and experimenting with neural networks. It's favored in the research community for its ease of use and seamless integration with Python.

Learn PyTorch