Use Sophia to knock out your gen-ed requirements quickly and affordably. Learn more
×

How the Team Works Together to Build Software  

Author: Devmountain Tutorials

what's covered
In this lesson, you will learn how to determine which roles on the software development team complete the different stages of the software development life cycle. Specifically, this lesson will cover:

Table of Contents

1. What are the Roles on a Software Development Team?

Roles and titles can vary between companies, there are nuances and differences. Large IT departments include additional roles that are more specific, such as database administrator, networking engineer, security engineer, project manager, or scrum master. Depending on the size and scope, a team may need more than one person for each role. At smaller organizations, like ours, there is more overlap between the roles. Let’s introduce you to the team!

1a. Product Manager

Product Manager

Product Manager: Jose

Related Titles: Product Owner, Business Analyst, Software Analyst

Responsibilities:

  • Identify the user’s needs and how they align to the business and market
  • Define the product vision, goals, and key performance indicators (KPIs)
  • Work with the team to clarify requirements

1b. User Experience Designer

User Experience Designer

User Experience Designer: Mori

Related Titles: Interface Designer, User Researcher

Responsibilities:

  • Ensure a consistent and simple approach to the user experience
  • Create designs, mockups, or prototypes
  • Test ideas or concepts with users
  • Review designs with the team

1c. Quality Assurance Engineer

Quality Assurance Engineer

Quality Assurance Engineer: Amanda

Related Titles: Engineer in Test, Quality Control

Responsibilities:

  • Test software solutions and identify defects or issues
  • Test software and document the results
  • Collaborate with the team to ensure the root cause of an issue is identified and fixed
  • Code automated tests

1d. iOS Engineer

iOS Engineer

iOS Engineer, Camilla

Related Titles: Mobile Developer

Responsibilities:

  • Write code for iOS mobile apps
  • Deploy the apps to the Apple App Store
  • Code and release app updates

1e. Web Developer

Web Developer

Web Developer: Ruben

Related Titles: Front-end Developer, Programmer, Web Engineer

Responsibilities:

  • Write code for websites and web applications
  • Create the website’s interface for users
  • Perform tests to ensure program works as expected
  • Understand integration to server and databases
term to know
Server
A powerful computer that provides information or data.
Database
A database is an electronic collection of organized information.

1f. Software Engineer

Software Engineer

Software Engineer: Monique

Related Titles: Back-end Engineer, Programmer, Engineer

Responsibilities:

  • Create system architecture
  • Build logic and integrations to connect the different programs and applications
There are subtle differences between engineers and developers, but for the sake of this course, you can think of them as the same.

At Poodle Jumper, we leverage the lean development methodology because it allows us to quickly iterate while controlling development costs. An iteration is when we repeat the process for an idea, design, or product until it is ready.

Image shows three devices. The first is a computer titled Website with a description that reads: A website for pet owners to join a waitlist, sign up, or request a service in their area. The second device is a table titled: iOS App for Care Providers with a description that reads: An iOS app for care providers to view requests, manage their schedule, and communicate with clients. The third device is a phone titled: iOS App for Pet Owners with a description that reads: An iOS app for pet owners to request care, manage their pet’s profile, and pay for services.
Poodle Jumper Products

Our software development team is responsible for the design, development, and testing of our website and two iOS mobile apps. The team includes a product manager, a user experience designer, a quality assurance engineer, a web developer, an iOS developer, and a software engineer.

 Image shows several boxes on the left side labeled as Ideas. An arrow shows the ideas moving to a circular arrow labeled Build with the words: Code and Test inside. Next to the Build circular arrow is a circular arrow labeled: Measure. Inside the Measure circular arrow is the word
Poodle Jumper Development Process

2. What Tasks Do the Different Roles Complete in the Development Process?

Role Tasks
Product Manager Organizes the ideas into a list, called the backlog, and leverages their productivity skill to ensure the priorities are aligned with the strategy.
User Experience Designer Leverages their innovation skill to brainstorm new ideas for solving problems with the team. They create sketches of what a solution could feel like and test the idea with potential customers. The team leverages their communication skills as they review the idea, identify risks or issues, and define what to build. When the team has an agreement on the direction, the engineers design the architecture for how the software will work.
Quality Assurance Engineer Outlines tests to ensure the software will work as needed and drive the expected results.
iOS Engineer Collaborates with the User Experience Designer to create storyboards that lay out the screens and identify what data elements the feature will need.
Software Engineer Creates the database elements needed and writes the logic in server-side code. When the code is ready, the team reviews it together to make sure it matches what they set out to build.
Web Developer Creates the features for the website and writes web services to connect everything together.
Quality Assurance Engineer Executes their tests and shares the results. The team meets to review the results and decide if the feature is ready to be released to users.

When the MVP is released, the team learns from the analytics, user feedback, and reported issues. Insights from the learnings are captured as ideas and the team leverages their agility skill to embrace the changes and adapt the feature as needed in the next iteration.

hint
Remember, you don’t have to be a tech expert to succeed in your life and career. You just have to embrace your technology skill and ride the wave of change.

In the next section, we’ll take a deeper dive into the roles to show you what their jobs look like on a day-to-day basis.

summary
This lesson explored the roles of a software development team and their tasks completed in the development process. The roles on a software development team include the product manager, user experience designer, quality assurance engineer, iOS engineer, web developer, and software engineer. While there may be variations in roles and titles between companies, their responsibilities involve identifying user needs, defining the product vision, creating designs, testing software solutions, and writing code for mobile apps, websites, and integrations. The development process follows a lean methodology that involves organizing ideas into a backlog, brainstorming, testing, outlining tests, collaborating on storyboards, creating database elements and writing server-side code, creating website features and web services, and reviewing code together as a team.

Source: This tutorial was authored by DEVMOUNTAIN and Sophia Learning. Please see our Terms of Use.

Terms to Know
Database

A database is an electronic collection of organized information.

Server

A powerful computer that provides information or data.