Courses
Discover thousands of courses from top institutions and platforms worldwide
Level
Course Type
Duration

YouTube
Explore practical systems thinking methods for software engineers in this conference talk from StaffPlus London 2023. Delve into EAST-BL, System Dynamics, and the Energy Barrier perspective, focusing on their applications in developing and operating distributed software systems. Gain valuable insights from Laura Nolan's expertise as she demonstrates how these approaches can enhance your understanding and management of complex software environments. Discover new ways to analyze and improve your systems' performance, reliability, and scalability through the lens of these powerful thinking frameworks.

Udacity
Learn how to build and program intelligent robots with this Robotics Software Engineer Nanodegree. Master ROS, path planning, and environment mapping through projects led by experts.

Zero To Mastery
This Software Engineer Career Path is your step-by-step roadmap to go from beginner (at any age!) to getting hired as a Software Engineer at one of the Big Tech firms like Apple, Nvidia, Google, Microsoft, Meta, OpenAI and others. You’ll be guided through our curated curriculum to ace their tough interviews, and get into a company that pays upward of $300,000/year to their engineers.Ace the coding interview at top tech companies (Google, Amazon, Meta, Apple, Microsoft, Nvidia + others)Use the right Data Structures & Algorithms to answer coding interview questions using the optimal solutionBecome a better Engineer by mastering Computer Science fundamentalsInsider tips & tricks from Instructors who have worked for big tech companies and have actually gone through and aced the interview processHow to ace all of your interviews, get more job offers and a higher salary

Udemy
Learn how to make yourself ready for software engineer interviews from a former Google interviewer. What you'll learn: Overall interview processWho they want to hireHow they interview candidatesGood/poor signalsInterview questionsHow to prepare phone/onsite interviewsPhone/onsite interview examples Are you a software engineer? And do you want to get a job at great software engineering companies like Google, Meta, OpenAI, orNVidia? If yes, you are at the right place!Getting a job offer from those companies is very challenging but not something you cannot get.You have already spent hundreds of thousands of dollars for your study and degrees, and I believe you are almost ready to get job offers. However, there are several missing pieces that you need to learn throughout this course. Getting a job offer means so many things:Your income would increase by a large amount, in some cases even more hundred thousand dollars.Better chance for your career development.You can work with great people. In this course, you will learn:Overall interview processes for internship position, full-time SWE, PhD candidates, and experienced SWEs.How to start your interview process.How to well prepare those technical interviews.Watch actual examples of phone and onsite interviews and see how they are evaluated. RequirementsSome coding skills, but not much.Great if you understand hash map and binary search tree, but not required.Desire to work as a software engineer. What to learn in this courseOverall interview processWho they want to hireHow they interview candidatesGood/poor signalsInterview questionsHow to prepare phone/onsite interviewsExamples. Target AudiencesCollege freshman/sophomore, looking for engineering practicum intern.College junior/senior or MS/PhD, majoring CS or related eng/science degree, looking for engineering intern.New college grad majoring engineering, looking for a fulltime position.Experienced software engineer/researcher, looking for a career advance.

Taro
System design interviews are an integral part of the software hiring process. In this course, we dive into what a typical interview is like, what parameters are assessed, and how you can excel in the interviews. If you are a software developer looking to ace your system design interviews, this course is for you. \ \ Here is what you will learn: 1. What happens in a system design interview 2. The dos and donts when designing a system 3. How you can prepare for an interview 4. What metrics are used to score a candidate 5. How you can self-evaluate your interview performance

YouTube
Explore insights on building a successful software engineering career in this 19-minute conference talk from React Advanced London 2022. Gain valuable lessons and perspectives from Michel Weststrate's personal experiences as he shares both triumphs and challenges encountered while leading open-source projects, working as a freelancer, and transitioning from engineer to tech lead in startup and Meta environments. Discover potentially counterintuitive advice and unpopular opinions that may challenge conventional wisdom about career growth in the field. Learn practical takeaways applicable to engineers at various stages of their careers, and prepare to engage critically with the speaker's ideas to form your own conclusions about navigating a technology-focused professional path.

YouTube
Explore the moral responsibilities and ethical dilemmas facing software engineers in this 50-minute conference talk from Android Makers. Examine the significant power developers wield in shaping technology that impacts millions of users daily, from medical cancer detection systems to spam bots, AI applications, and data-sensitive platforms. Learn to recognize and navigate ethical challenges through real-life examples, ranging from seemingly harmless decisions like questionable newsletter subscription practices to more complex issues involving password security and data handling. Discover how to identify subtle ethical problems that are difficult to detect and resolve, while understanding the broader consequences of your code on society. Gain insights into making responsible development decisions and contributing to better software engineering practices that prioritize user welfare and ethical standards in an increasingly connected world.

Coursera
This course provides an introduction to programming frameworks and their implementation issues in the Cloud. It explains multiple topics, including: scalable distributed data stores, resource management (for supporting multi-tenancy and elasticity) and virtualization techniques. Optionally, the student will also be guided in the implementation of a basic version of the distributed runtime system for the Map-Reduce programming framework

Udemy
Learn Active Directory, Microsoft Intune, Group Policy, DNS, Azure AD, Microsoft 365, Storage, Backup, WSUS and Azure What you'll learn: Learn Active Directory, Group Policy, DNS, Azure Active DirectoryLearn Windows Server Administration, WSUS, Microsoft Intune, MDM, Windows Server SecurityStorage Management, Data Recovery & Performance Management.Manage applications using Microsoft IntuneIntroduction to Cloud Computing: Overview of cloud computing models (IaaS, PaaS, SaaS).Cloud Infrastructure Management: Provisioning and managing virtual machines (VMs) in the cloud. Networking concepts in the cloud environmentProject Work and Hands-On Labs: Managing costs and resource optimization in the cloud. Implementing governance policies and compliance. The IT System Engineering and Cloud System Administration course is designed to provide participants with comprehensive knowledge and hands-on skills required to excel in the field of managing and maintaining modern IT systems and cloud-based infrastructures. This course offers a deep dive into the fundamental concepts, best practices, and advanced techniques necessary for effective IT system engineering and cloud system administration. Course Objectives: In this course, you will get hands-on experience while completing the following tasks: 1. Fundamental IT System Concepts: Understand the foundational principles of IT systems, including hardware, software, networking, and security.2. Operating Systems Mastery: Gain proficiency in installing, configuring, and managing various operating systems, including Windows Servers, Windows Client Operating System and virtualization technologies3. Cloud Computing Basics: Explore the fundamentals of cloud computing, including cloud models (IaaS, PaaS, SaaS), virtualization, and cloud service providers (e.g. Azure).4. Cloud Infrastructure Management: Acquire skills to deploy, monitor, and manage resources in cloud environments, including virtual machines, storage, and networking components.5. Security and Compliance: Understand IT security best practices, encryption, access controls, and compliance considerations when working with IT systems and cloud services.6. Troubleshooting and Problem Solving: Develop the skills to diagnose and resolve complex IT issues in both on-premises and cloud environments.7. Introduction to Microsoft Intune: Understand the core concepts, features, and benefits of Microsoft Intune as a unified endpoint management solution.8. Device Enrollment and Configuration: Learn how to enroll and configure various types of devices (Windows, iOS, Android) into Intune for seamless management.9. Introduction to Active Directory: Understand the core concepts, components, and architecture of Microsoft Active Directory and its role in network infrastructure.10. Domain Services and Domain Controllers: Learn how to create and manage Active Directory domains, domain controllers, and trust relationships.11. User and Group Management: Acquire skills to create, manage, and maintain user and group accounts, including user authentication and access control.12. Group Policy Management: Explore the creation and application of Group Policy Objects (GPOs) for centralized configuration, security policies, and software deployment.13. Organizational Units (OUs): Understand how to design and implement OUs to organize and manage network resources efficiently.14. DNS and Active Directory Integration: Understand the integration between Active Directory and DNS for proper name resolution and network functionality.15. Active Directory Trusts: Explore the setup and management of different types of trusts, including cross-forest and external trusts.16. Introduction to WSUS: Understand the importance of WSUS in maintaining system security, patch management, and software updates within a Windows network.17. WSUS Deployment Planning: Learn how to plan for WSUS deployment, including server placement, network considerations, and integration with existing infrastructure.18. WSUS Installation and Configuration: Acquire skills to install and configure the WSUS server, including database setup, synchronization options, and proxy server integration.19. Target Groups and Computer Groups: Gain proficiency in organizing computers into target groups and computer groups for more efficient update management.And much more. Course Format: The course consists of a combination of lectures, hands-on labs, practical exercises, and real-world scenarios. Participants will have access to a dedicated lab environment to gain practical experience in configuring and managing IT systems and cloud services. The course culminates in a final project where participants will design and implement a comprehensive IT system using cloud resources. By the end of this course, participants will be well-equipped to take on roles as IT system engineers and cloud system administrators, capable of effectively managing and optimizing IT infrastructure in both traditional and cloud-based environments.

Taro
Landing a software engineering internship at a top company is an incredible achievement—but for many students, it also brings a new wave of anxiety: *How do I make the most of this? What if I mess up?* This course will help you walk into your internship with clarity, confidence, and a game plan. We know how much is riding on your performance, especially if you’re aiming for that coveted return offer. This course cuts through the noise and focuses on what actually matters during your internship—both technically and interpersonally. You’ll get practical insights and guidance on how to approach the internship experience holistically. By the end, you’ll understand how top-tier internships really work, what’s expected of you, and how to set yourself up for long-term success. This course will help you: - ⛰️ Understand how internships work at **top companies** - 🧠 Establish the **right mindset** to succeed - ⚙️ Clarify **technical skill** expectations - 🗣️ Know the critical, underappreciated **soft skills** interns need - 💪 Generate a list of **concrete action items** to prepare and improve Whether you’re feeling unsure about what to expect or just want to give yourself the best shot at thriving, this course is here to support you every step of the way.

Coursera
Sponsored by AMAZON WEB SERVICES (AWS). Learn real-world software engineering management skills to succeed and impress in your first (or next) management role at elite engineering organizations. NANCY WANG, Director of Engineering and General Manager of AWS Data Protection Services and Founder, Advancing Women in Tech (AWIT), shares with you the engineering skills cultivated at AMAZON (the #2-ranked company in the Fortune 500), with supplemental practices from GOOGLE and MICROSOFT. Develop the skills and mental models that the world's best engineering managers apply to attract and retain world-class engineering talent. Upon course completion, you will understand what world-class software engineering organizations expect of their managers, including: * How to BECOME A MANAGER * Whether MANAGERS or INDIVIDUAL CONTRIBUTORS make more money * What is the difference between MANAGER EFFECTIVENESS and MANAGER QUALITY * How to HIRE YOUR TEAM * How to guide a team with TEAM GOALS

Taro
Excelling in the tech world isn't just about technical abilities—it's also about mastering clear communication. While many engineers focus primarily on coding, those who stand out understand that effective communication is important for both team success and personal growth. If you're looking to improve your communication skills, this course is for you. Clear communication makes sure your ideas are understood, reduces errors, and enhances teamwork. Here's what you'll learn: 1. 💡 **Basics of clear communication**: Grasp the essentials, including simplicity, brevity, structure, and relevance. 2. 🧠 **Mindset of a good communicator**: Discover how to tailor your messages to different audiences, whether they're team members, managers, or clients. 3. 📊 **Practical communication methods**: Learn techniques like the Pyramid Principle, PREP Method, STAR Method, and Problem → Solution → Benefit framework. 4. 👩🏽💻 **Effective communication in meetings**: Gain strategies for clear and productive meetings, from setting agendas to encouraging participation and summarizing key points. 5. 🎯 **Immediate practical application**: Use what you learn through exercises, role-playing, and real-world scenarios to improve your communication skills right away. In tech, effective communication is as important as technical skill. This course will equip you to share your ideas clearly, lead discussions, and create a collaborative work environment, ensuring both you and your team can achieve your goals.

Codecademy
With the right instructions (or prompts), generative AI tools can help streamline development by creating functional code snippets and syntax. This course will show you how to use ChatGPT for coding by breaking down the basics of prompt engineering for software development. You’ll explore the generation of Bash commands, regular expressions, and database queries; then move on to generating classes and unit tests to ensure code quality and reliability and refactoring code to improve readability and maintainability.

YouTube
Explore data modeling from a software engineering perspective in this 55-minute conference talk that challenges the notion that formal data modeling is obsolete. Discover how data modeling extends far beyond traditional database design to encompass API payloads, messages, configuration files, document metadata, and Redis indexes that software engineers work with daily. Learn practical approaches to defining and structuring data in modern development environments while balancing agile methodologies with architectural considerations. Examine the tension between empowered teams making quick data decisions and the long-term challenges this creates for data architects trying to maintain coherence across systems. Gain insights into how thoughtful data modeling can improve software quality and maintainability without slowing down development velocity.

YouTube
Explore the relevance of data modeling in modern software engineering in this 40-minute conference talk from Devoxx Greece 2025 presented by Scott Sosna. Challenge the notion that formal data modeling is obsolete in today's agile development environment. Discover how data modeling extends far beyond traditional database persistence to include API payloads, messages, configuration files, document metadata, and Redis indexes. Learn practical approaches to data modeling specifically tailored for software engineers, offering insights that bridge the gap between agile development practices and sound data architecture principles.

YouTube
Explore the importance of personal branding for software developers in this 28-minute conference talk from JSWORLD Conference. Learn how building your own brand can advance your career, enhance your reputation, and increase your visibility in the tech industry. Discover a 12-month strategy for creating a platform, including tips on learning in public and other effective methods. Gain insights from Gift Egwuenu's personal journey and examine successful personal brands to understand what sets them apart. Acquire practical advice to start developing your own personal brand and leverage it for professional growth in the software engineering field.

CodeSignal
Master the skills to conduct fair, effective interviews for software engineers, focusing on behavioral, technical, and unbiased evaluation.

Udemy
Build enterprise restful API's What you'll learn: Build enterprise applicationsWrite great APIs with Spring MVCWrite great APIs with RestEasy / JaxRSUse Resteasy Client APIUse Java Bean Validation API to validate properties sent from client to serverWrite unit tests and mocking servicesWrite integration testsUse Dependency InjectionSerialise and Deserialise java objects as JSONUse Intellij IDEA like a real software engineer After receiving more than 150 thousands on youtube. My video on is the most popular video for learning Spring Boot in under 50 minutes. A lot viewers asked for a course and here it is. This course is packed with over 6 hours of awesome content where you will learn the following N Tier Architecture If you not sure how to structure applications. This course will teach you how to your classes in the right place.Restful API with Spring MVCand the most know HTTP Methods. i.e GET, POST, PUT, DELETEUnit testingWriting software is not just writing code with proving that it actually works.You will learn how to unit test classes using JUnit, Mockito BDD style and Assertj.How serialise and deserialise java class to JSON objects using Jackson FasterXmlSpring Depedency InjectionRemoving the new keyword for services and data access class has great advantages and its something that you must know.JaxRS and RestEasySpring MVC is great but it does not implement JaxRS specification.You will learn how to create Restful APIs with RestEasyRestEasy Client APIChoosing the perfectrest client is difficult.RestEasy makes it easy to create proxy to any API.Integration TestsIn this course you will learn how to write integration tests to ensure all components and classes work together.Java Bean Validation APIThis API allows us to have annotations in JavaPOJOS to define allowed values for properties and required propertiesRefactoringHow to package and spin upthe application as .JAR filePerhaps you want to learn how to build enterpriseapplications, or want to improve your skills in the Java world or even hunting for your next job as a software engineer. Well this course prepares you for all scenarios and I can guarantee you that will become a better software engineer after taking this course. Become part of the 150thousand people that have benefited from learning Spring Boot with me. Enrol now and I will see you inside.

CourseHorse
This training course is designed to give participants the knowledge and skills to become a Collaboration Communications Systems Engineer. Participants should understand the fundamentals of networking, telecommunications, audio/visual and meeting room technologies, identity and access management, and Microsoft Teams. They will gain hands-on experience configuring and deploying Microsoft Teams Phone, meetings and certified devices including Microsoft Teams Rooms and Surface Hub. The course will also cover how to manage and monitor Teams Phone, meetings, and certified devices using the Microsoft Teams admin center, PowerShell, the Microsoft Teams Rooms Pro Portal, and the Call Quality Dashboard. In addition, the course will cover configuring and deploying Microsoft Teams Phone with PSTN connectivity through Microsoft Calling Plans, Operator Connect, Teams Phone Mobile, and Direct Routing. Who Should Attend? Collaboration Communications Systems Engineers are responsible for planning, deploying, configuring, maintaining, and troubleshooting Microsoft Teams Phone, meetings, and personal and shared space devices, including Microsoft Teams Rooms and Surface Hub. Collaboration Communications Systems Engineers have a fundamental understanding of networking, telecommunications, audio/visual and meeting room technologies, identity and access management. They are proficient in managing and monitoring Teams Phone, meetings, and certified devices using the Microsoft Teams admin center, PowerShell, the Microsoft Teams Rooms Pro Portal, and the Call Quality Dashboard. They deploy and configure Microsoft Teams Phone with PSTN connectivity through Microsoft Calling Plans, Operator Connect, Teams Phone Mobile, and Direct Routing. Collaboration Communications Systems Engineers work with Teams Administrators, Microsoft Identity and Access Administrators, and Microsoft 365 Administrators. In addition, they may work with owners of other workloads, including facilities managers, network engineers, security engineers, device manufacturers, telephony providers, and Microsoft Certified solutions providers. prerequisites Microsoft 365 and Microsoft Teams Networking, telecommunications, and audio/visual basics Identity and access management basics Course Outline 1 - Introduction to Teams meetings and calling Overview of Teams meetings and events Overview of Teams Phone Overview of auto attendants and call queues Overview of Teams devices 2 - Plan for Teams Phone Plan to deploy Teams Phone Plan for Teams Phone PSTN connectivity Determine license requirements Plan for Teams Phone devices Plan and design Teams Phone features Plan for voicemail 3 - Plan for Microsoft Teams Rooms and Surface Hub Determine license requirements for Microsoft Teams Rooms and shared devices Understand differences between Microsoft Teams Rooms on Android and Windows Understand Microsoft Teams Rooms on Surface Hub 2S Understand and plan Teams Room accessories, components, and peripherals Understand Teams Rooms management options 4 - Plan and optimize network performance for Teams media Understand Teams network requirements Design network for media optimization Design and implement QoS 5 - Configure and deploy Teams Phone Configure emergency calling for Teams Calling Plans Manage and configure Microsoft PSTN numbers Configure Operator Connect and Teams Phone Mobile Configure Teams Phone policies Create and manage Teams policies Configure Audio Conferencing 6 - Configure and deploy Teams Phone with Direct Routing Design Direct Routing call flows Implement SIP trunking with Direct Routing Configure Emergency Calling for Direct Routing Extend Teams Direct Routing infrastructure Deploy and maintain a survivable branch appliance 7 - Extend Teams Phone with additional services Understand how Teams interacts with additional services Configure compliance recording in Teams Configure and integrate a certified contact center in Teams Design and deploy voice bots in Teams 8 - Manage meetings and events experiences Explore meetings and events in Microsoft Teams Configure meeting settings Create and manage meeting policies Configure audio conferencing Create and manage meeting templates and template policies Create and manage meetings customization policies Configure live events settings Create and manage live events policies Examine live events across Microsoft 365 9 - Guided project - Create and assign Teams policies to meet business requirements in Microsoft Teams Prepare 10 - Configure and manage voice users Enable users for Teams Phone Enable users for Direct Routing with Teams Phone Enable additional calling features for Teams Phone Enable users for Teams Phone Mobile 11 - Configure auto attendants and call queues Design call flows for auto attendants and call queues Configure auto attendants and call queues Deploy a channel-based call queue Configure resource accounts Configure Microsoft 365 groups for voicemail Interpret call queue conference modes Interpret call queue routing methods Configure holidays for auto attendants and call queues Configure custom music on hold 12 - Configure, deploy, and manage Teams devices Manage Microsoft Teams Phones Manage Microsoft Teams Room Systems Microsoft Teams Rooms management options Manage Surface Hub 2S devices Configure Microsoft Teams SIP gateway Manage Microsoft Teams displays Remote provisioning and sign in for Teams Phones Update Microsoft Teams devices remotely Manage Microsoft Teams device tags 13 - Guided project - Prepare meeting room experiences Prepare 14 - Monitor and troubleshoot Teams collaboration communications systems Diagnose and troubleshoot phone number assignment Diagnose and troubleshoot Teams client issues Diagnose and troubleshoot call failure and call quality issues Report on and troubleshoot Teams calls with Call Quality Dashboard Diagnose and troubleshoot Direct Routing issues Troubleshoot and monitor Teams devices Troubleshoot Teams meetings and calling Troubleshoot Teams Rooms devices

Coursera
Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the requirement analysis phase of SDLC, and you will learn how to use UML models to capture the system requirements and to facilitate communication between client/users and developers. UML is a general purpose visual modeling language for systems. It can be used to highlight different aspects of the system that are of interest to different stakeholders. Data requirements are captured in the domain model, which describes the important concepts of the application domain as classes, associations between them and constraints on them. Functional requirements are captured in the use-case model to describe the interactions between the system and its environment (users, other systems). UML incorporates the current best practices in Object-Oriented modeling techniques. Basic object-oriented programming (OOP) concepts are required to attempt the course. It is recommended to take the courses in the order they are listed, as they progressively develop techniques and concepts about software engineering, but it is not a hard requirement.