Select Page

Find the right nanodegree program for you.

Start Learning

“When I graduated from my programming bootcamp, I had the skills to be a great programmer,” Lindsey starts. “But it wasn’t until I joined Udacity that I realized I still had a lot to learn about being a software engineer.”

The terms Programmer and Software Engineer, contrary to popular belief, are not interchangeable. A programmer knows how to code and may have the technical skills needed to build meaningful products. A software engineer follows a systematic process of understanding requirements, working with stakeholders and developing a solution that fulfills their needs. A programmer tends to work alone. A software engineer is part of a larger team.

Lindsey realized this difference when she graduated from a prestigious bootcamp in San Francisco and started working at a company (with us!). From learning GitHub workflows to more involved testing (“I always questioned the importance of testing,” Lindsey explains, “with individual projects, I knew what it was supposed to do since I build most of it. Now, since all the parts interact with each other, I need to be very careful to test my code”), Lindsey had to pick up a lot of skills as she transitioned into this new role.


Udacity’s Software Development Life Cycles will help make the transition from programmer to software engineer easier for everyone. Taught by esteemed Georgia Tech Professor Alex Orso, SDLC explores software phases, requirements engineering and software testing methods.

P1L3 Lesson Overview

Through Professor Orso’s engaging practical examples and interviews with industry insiders, you will learn how to select and implement the ideal software process for your development project. Our goal is to equip you with the skills necessary to define requirements, set up an integrated development environment (IDE), learn Git (and Github!) and use Unified Modeling Language (UML) to design and build an Android application.

We will also examine several testing practices and refactoring techniques that are helpful before the launch of your software project.

P3L2 Debriefing

Ready to get started? Enroll for the full course experience or view the free courseware now.

Check Out the Course

Siya Raj Purohit
Siya Raj Purohit
Siya is a Program Manager at Udacity where she helps build and launch Nanodegrees. She is very passionate about all things STEM and is the author of "Engineering America". She loves learning about new startups, trying out all apps and exploring the San Francisco Bay Area.