What's a Dev?

Warm Up

Take 5 minutes to brainstorm all of the job titles a software developer might hold - be ready to share your list!

The Software Development Lifecycle

There are many steps to complete when developing a new software solution or even a feature. Every solution will have different specific steps, but most will have at least 6 common steps:

  1. Analysis
  2. Design
  3. Development
  4. Testing
  5. Deployment
  6. Maintenance

Analysis

This is the initial planning phase; typically started with a client, or other stakeholder making a request for a new product or feature. Or, in rare cases, this could be the inception of a brand new product or company!

Job Roles

  • Product Owner
  • Project Manager
  • CTO
  • Business Analyst

Design

This is where major decisions are made - we try to answer complex questions about the new product or feature.

  • What is the Minimum Viable Product (MVC)?
  • What tech stack will be used?
  • What is the budget (time and money)?

Job Roles

  • System Architect
  • UX/UI Engineers
  • Solutions Architect
  • Database Administrator

Development

This is what we have been practicing during the first few mods at Turing! Development is the process of implementing the features that make up the MVC (as determined in the Design step). During this phase, we generally write tests that confirm that the feature is doing what we (the developers) thing it should be doing.

Job Roles

  • Front-end Developers
  • Back-end Developers

Testing

Now, the feature developers hand their work to another team - the testing that happens in this phase will confirm that the development phase produced what the client or stakeholder is expecting. This phase is sometimes referred to as QA (quality assurance) or User Testing.

Job Roles

  • Solutions Architect
  • QA Engineer
  • Testers
  • DevOps

Deployment

In this phase, we move the feature out of the development environment into a live environment where it will be accessible by all intended users. For example, when we build a website, we work on the application locally, and then deploy it onto servers that are constantly running on the web.

Job Roles

  • DevOps
  • Database Administrator

Maintenance

Once deployed, we need to make sure that the feature continues to work as expected. During this phase, we make sure that updates to the feature do not interfere with its intended purpose. Similarly, we need to keep an eye on how users are using the feature - is the feature being used appropriately?

Often, during the maintenance phase of one feature, the whole process is started over for a new feature!

Job Roles

  • Users
  • Testers
  • Support Managers

Workflow

Agile vs Waterfall

Take a few minutes to research the following software development processes. Be ready to share your discoveries!

  • Sprint
  • Daily Scrum
  • Epic

Lesson Search Results

Showing top 10 results