Skip to main content

Intro

https://blog.trello.com/project-management-methodologies

Project Factors

  • Project budget: How much money is going to be spent on this project? How is it divided up?
  • Timeline: When is your project due by?
  • Goals: What are the project's end goals and deliverables? Start there and work backward.
  • Values: How do your organizational goals and values apply to this project? Knowing this will help set expectations (and help you hold team members accountable for their commitments).
  • Complexity and Scale: How complex or simple is this project?
  • Flexibility: How flexible or rigid is this project and its end goals, timelines, deliverables, and team or stakeholder expectations?
  • Project type and industry: Some methodologies work best for certain industries and project types, such as highly creative projects or product development sprints.
  • Team: Consider the team size, diversity, flexibility, experience, and individual expertise or strengths and weaknesses, as well as their ability to collaborate and communicate when choosing a methodology.

What we need

  • Advanced project & task management
  • Dynamic sprint metrics & planning
  • Deep linking between team members, projects, tasks, & sprints
  • Overall & per sprint Block dashboards powered by filtered views
  • Capacity planning (overall & per sprint)
  • Story pointing process
  • Project alignment to epics & workstreams
  • Change request log
  • Project calendar
  • Pre-built backlog & change request forms
  • Design review facilitation
  • Personal views for projects, tasks, and dashboards
  • Designed to scale yearly with easy-to-follow instructions

Engineering principles

  • All-in - This was a massive program and it needed the entire company, from exec to intern, behind it.
  • Attack the riskiest assumption - Don't think "MVP." Think about what the riskiest part of the entire program is, and focus on that until it's no longer the top risk.
  • Incremental, even when it hurts - Reduce risk by breaking the migration into as many small parts as possible, even when that increases dev time.
  • Sprint to 100% - In this program, the payoff was when we could completely stop deploying to the old infrastructure. Don't slow down or lose focus until you are done.

https://www.atlassian.com/blog/technology/software-engineering-principles-massive-projects

https://www.atlassian.com/blog/inside-atlassian/stopping-team-dysfunction-before-it-starts

Daily Standup

  • It is held at the same time and place every day

  • It involves the same participants every day

  • There is a fixed agenda that is usually to answer a fixed set of questions

    • What did you complete yesterday?
    • What do you commit to do today?
    • When do you think you'll be done with that?
    • Any blockers in your way?
  • Any transgressing topic is scheduled to be discussed later, ensuring only the questions defined in the agenda are answered during the daily scrum

  • Automated, asynchronous meetings.

https://docs.google.com/spreadsheets/d/1VEVFGPTAJO0hIR_dhXNVdoH9LKEyfC1TZDZHRMqbgGk/edit#gid=0

Startup Engineering Team

https://increment.com/teams/how-to-build-a-startup-engineering-team

https://codingsans.com/blog/engineering-productivity

LOOK FOR GOALS AND ACHIEVEMENTS

YOU COULD TRACK METRICS

how often can your team make changes in production.

Challenges for managers with engineering productivity

  • SETTING GOALS
  • HAVING TOO MANY MEETINGS

On-boarding for maximum engineering productivity

  • GIVE THEM CONTEXT
  • PAIR PROGRAMMING IS AWESOME FOR ON-BOARDING
  • SET THE DIRECTION

Effects of mentoring on engineering productivity

  • HAVING A MENTOR IS GREAT
  • BUT IT'S NOT A MUST

Keeping engineering productivity high

  • HAVE CLEAR GOALS
  • PRIORITIZE, PRIORITIZE, PRIORITIZE
  • DON'T BE A TEDDY BEAR
  • CHALLENGE YOUR PEOPLE

How to improve engineering productivity

  • RELEASE CODE MORE FREQUENTLY
  • USE 1-ON-1S
  • MAKE SURE THE INFORMATION FLOWS
  • OrgChart

The Chicken and the Pig

The business fable of The Chicken and the Pig is about commitment to a project or cause. When producing a dish made of eggs with ham or bacon, the pig provides the ham or bacon which requires his or her sacrifice and the chicken provides the eggs which are not difficult to produce. Thus the pig is really committed to that dish while the chicken is only involved, yet both are needed to produce the dish.

The Chicken is involved, but the Pig commits!

https://en.wikipedia.org/wiki/The_Chicken_and_the_Pig

Process groups

  • Initiation
  • Planning
  • Production or execution
  • Monitoring and controlling
  • Closing

https://en.wikipedia.org/wiki/Project_management

RACI Matrix

A responsibility assignment matrix (RAM), also known as RACI matrix or linear responsibility chart (LRC), describes the participation by various roles in completing tasks or deliverables for a project or business process. RACI is an acronym derived from the four key responsibilities most typically used: responsible, accountable, consulted, and informed. It is used for clarifying and defining roles and responsibilities in cross-functional or departmental projects and processes

https://en.wikipedia.org/wiki/Responsibility_assignment_matrix

Projects

  • HLD
  • LLD
  • Product Review
  • Risk Review
  • Engineering Review
    • API Design
    • Database modeling
    • Test cases
  • Demo - 1 (product + engineering)
  • Demo - 2 (product + engineering)
  • Demo - 3 by QA (product + engineering)
  • Release
  • Monitoring
  • Retro

Stages

  • Scope
  • Scope freeze
  • Exploration
  • Discussion
  • Test case creation
  • Test case review
  • Design documentation
    • Use case
    • Scope
    • Cuts
    • HLD (High level design)
    • LLD (Low level design)
  • Design review
  • Coding
  • Unit testing
  • PO Review
  • Code Review
  • Q/A - Integration Testing

Process / Procedure

  • Add items to backlog (cold/hot)
  • Start a weekly sprint from backlog
    • Backlog grooming
    • Story points estimation (time estimation)
    • Accordingly assign tasks
  • Add tasks from backlog to sprint
  • Each sprint is a release (hard deadline)
  • Adhoc tasks should be tagged and at last see how many adhoc task comes
  • Close the sprint and start new sprint
    • Move old not completed items to next sprint

Terms

RFQ - Request For Quote

A business sends an RFQ when they already know what they want to buy and are looking for pricing options. RFQs are often used when a company wants to compare prices from different vendors, or when they're comparing goods instead of services. An RFQ can be like a shopping list for specific pricing details, and it outlines how vendors should provide pricing data. The business will usually award the contract to the vendor with the lowest bid that meets the qualifying criteria.

RFP - Request For Proposal

A business sends an RFP when they need more information about a product or service, or when they have a problem but aren't sure how to solve it. RFPs are often used for complex projects, and they describe the scope of a project in detail and ask suppliers to come up with different solutions. The goal of an RFP is to find the right partner for the project based on capabilities and compatibility, not just cost.

Others

  • BAFO - Best And Final Offer

Analytics

  • Number of adhoc tasks each person is doing
  • Number of tasks migrated from previous sprint to new sprint
  • What each person is working on over all teams/projects
  • Retrospectives
  • Reviews
  • Performance reports for each team member (for quaterly reviews)

Questions

The Complete Project Management Body of Knowledge in One Video (PMBOK 7th Edition) - YouTube

Rolling wave planning

  • Far away - high level idea
  • Near term - detailed plan