Online Course – Certified Professional Internship in Open Source Software Development from Google and the Linux Foundation

Learn how to develop open source software. Gain the skills and knowledge needed to develop open source software using Linux, Git, and more!

Suggested by: Coursera (What is Coursera?)

Professional Certificate

Beginners

No prior knowledge required

Time to complete the course

7-day free trial

No unnecessary risks

Skills you will acquire in the course

  • Communication skills
  • Ability to analyze information
  • Troubleshooting
  • Time management
  • Creative thinking
  • Teamwork
  • Technological skills
  • leadership
  • Presentation skills
  • Learning strategies

What you will learn in the course

Courses for which the course is suitable

  • Open source software developer
  • Linux system administrator
  • Distributed systems developer
  • Software developer with Git
  • DevOps Engineer
  • Linux application developer
  • Version Management Expert
  • Open source software developer

Internship – Series of 4 courses

Specializing in open source software development

  • It will give you a strong foundation for working comfortably and productively in open source development communities.
  • Upon completion of the internship, you will have a better understanding of the Linux environment.
  • You will learn the methods and tools required to use Linux successfully.
  • You will know how to use Git, a distributed version control system.

Certificate and recognition

  • Upon completion of the internship, you will receive a certificate from Coursera.
  • You will receive a digital badge from the Linux Foundation recognizing your expertise.
  • The digital symbol will allow you to promote your achievement online.
  • You can access insights about jobs related to your new skills.

Hands-on Learning Project

  • In all Linux Foundation courses (in any format) we place a strong emphasis on hands-on learning.
  • We strive to maintain a 50/50 balance between lectures and work on practical exercises.
  • Courses 2, 3, and 4 include many practical exercises.
  • These exercises will allow you to work in a Linux environment.
  • Using the methods and tools presented in the lectures.

Details of the courses that make up the specialization

Open source software development methods

Course 1

  • 4 hours
  • 4.6 (1,494 ratings)

Course Details

What you’ll learn

In this course, we will understand what open source software is, go over its history, and learn about the benefits it has brought to the world’s technology infrastructure over the years. The goal of the course is to teach you how to work on open source projects productively and enjoy the many benefits they offer. You will learn about best practices for collaboration and how to encourage diversity in open source projects. We will discuss the different licensing models available, as this will help you decide what licensing is best for your project. We will talk about common practices, such as continuous integration, and use GitHub and other hosting providers as a meeting point for open source projects. We will provide examples of successful open source projects.

Linux for developers

  • Course 2
  • 18 hours
  • 4.5 (1,359 ratings)

Course Details

What you’ll learn

In Course 1, we talked about open source software and the motivation and methods for using it. In Course 2, we will introduce you to Linux systems, and help you feel comfortable working at the command line:

  • What is Linux?
  • Linux history
  • How to separate the kernel from the rest of the operating system
  • How to donate to the core
  • A graphics system and how it works
  • Working at the command line
  • File system structure, partitions
  • Management tools

You will learn what it means to work on a Linux system, and gain a good understanding of the important skills you will need on a daily basis when working with Linux systems.

Linux tools for developers

  • Course 3
  • 15 hours
  • 4.6 (716 ratings)

Course Details

What you’ll learn

Course 3 is a continuation of the previous course, and its focus will be on teaching you how to work with the tools you need in your daily work. The course starts by introducing you to a number of essential command line tools that you use every day. Then, the course focuses on bash scripting – you will learn how to build scripts and how to perform complex tasks automatically. The course deals with files and file systems, we will focus on compiling programs on Linux, using gcc and other compilers, and we will work with different types of libraries. We will also discuss how Java works on Linux, and we will understand why there is no reason to worry about Java programs being easy to use on Linux. The course will end by covering building software packages on Linux.

Using Git for distributed development

  • Course 4
  • 21 hours
  • 4.6 (572 ratings)

Course Details

What you’ll learn

Course 4 focuses on using Git for open source software development in a distributed architecture. Git is a version control system that grew out of the Linux kernel development community. Git is designed to help developers around the world collaborate on complex projects to coordinate their work in an organized manner and keep track of everything they do. Over time, Git has become popular and is used by millions of projects today. This course gives you the opportunity to learn how to use Git effectively and make contributions in a relatively short period of time. It will cover:

  • How to install Git
  • How to initiate a repository
  • How to make changes to the database
  • How to make changes to repositories available to others
  • How to accept changes from other employees
  • How to find faults in your work and revert to previous states of your projects
  • How to perform commits, diffs, merges, rebases.

The course will help you acquire the skills to understand how to use Git. You will learn about Git workflows, identify problems in your workflows, and find solutions to these problems.