### Roles
- Product manager decides business requirement
- Product owner exists in scrum setting to manage stories backlog and sprints
- Engineering manager coordinates with PM on technical requirements
- Operations team - sets up server requirements
- Developers - code
- Designers - plan UI
- Testers - build test plan and imagine usability of the application, help find out fundamental flaws in the design of the application, use bug tracking system (JIRA)

### Agile methodology
Scrum (implementation of Agile)
3 key stakeholders
Product owner
Scrum master
Team: Engineers, testers

Documents:
1. Product backlog aka user stories (a way of describing feature set)
    User story example: As an Instagram user, I need to be able to like a picture I see in the feed
2. Sprint backlog - user stories converted into tasks or tickets for each sprint
3. Burndown chart - Chart showing completion of tasks as the sprint goes

### Meetings: 
Sprint planning - product owner, scrum master and team meets to discuss user stories and estimate their relative sizes
Daily scrum - standup meeting, discuss What's completed and what's blocking
Sprint review - discusses work and think about improving process flow

1. Sequence diagrams - [YouTube video](https://www.youtube.com/watch?v=pCK6prSq8aw&ab_channel=Lucidchart)
2. Synchronous vs asynchronous calls - [Link](https://pediaa.com/what-is-the-difference-between-synchronous-and-asynchronous-calls-in-java/)

### Kanban
