Prepare for interviews
Academy
Browse by topic or choose a career path.
Career Paths
Choose your learning path. Start with the Foundation Pack, then select a career track.
Cloud Foundation Pack
Prerequisites before any career path: Linux CLI, Networking 101, Git Basics, Web Architecture.
Frontend Developer
Use HTML, CSS, and JavaScript to build the visual and interactive elements of websites and applications. Ensure interfaces are responsive, accessible, and visually appealing.
Backend Developer
Server-side development: server logic, databases, and APIs. Handle authentication, authorization, and processing of user requests using languages like Python, Java, Node.js, or Go.
Cloud Engineer
Infrastructure provisioning and connectivity—architecting the virtual hardware that powers the business.
DevOps Engineer
Bridge dev and ops: automate and improve the speed, efficiency, and reliability of software delivery. CI/CD, infrastructure as code, and monitoring.
Site Reliability Engineer (SRE)
Operational excellence via software engineering—writing code to ensure systems are self-healing.
Full Stack Developer
Work on both front-end and back-end of applications. Build UIs with HTML, CSS, JavaScript (and a framework like React or Vue); build server logic, databases, and APIs. Often take care of everything required to push the product into production.
DevSecOps
Integrate security into the development and operations lifecycle. Shift-left security, secure CI/CD, and secure supply chain.
AI Engineer
Apply pre-trained models and existing AI tools to improve user experiences. Focus on integration, APIs, and practical application—not building models from scratch.
System Design
Create a detailed blueprint of a system's architecture, components, modules, interfaces, and data to fulfill specific requirements. Address scalability, performance, security, and usability.
Data Structures & Algorithms
Step-by-step guide to learning data structures and algorithms. Build a strong foundation in complexity analysis, core data structures, and problem-solving patterns used in coding interviews and production code.