HarshadRanganathan / harshadranganathan.github.io

Personal Website
MIT License
0 stars 2 forks source link

Things I tried as team lead: #1 #23

Open HarshadRanganathan opened 2 years ago

HarshadRanganathan commented 2 years ago

https://martinfowler.com/articles/scaling-architecture-conversationally.html

HarshadRanganathan commented 1 year ago

https://rework.withgoogle.com/

HarshadRanganathan commented 1 year ago

https://slite.com/blog/micromanagement-is-not-a-bad-word

HarshadRanganathan commented 1 year ago

image

HarshadRanganathan commented 1 year ago

https://www.infoq.com/articles/devops-governance-developer-velocity/

HarshadRanganathan commented 1 year ago

https://www.theengineeringmanager.com/qa/how-do-i-get-better-at-giving-feedback

HarshadRanganathan commented 1 year ago

https://blog.gruntwork.io/cloud-adoption-fails-65295aff30cc

HarshadRanganathan commented 1 year ago

https://blog.pragmaticengineer.com/oncall-compensation/

A: Oncall for software engineers is additional.

  1. “Being oncall is your one and only job.”

  2. “It’s not part of the job outside business hours.

  3. “It’s not part of the job outside business hours, but we might still try to reach you during those times.”

  4. “It’s part of the job for all software engineers and we operate in regions which regulate how it needs to be compensated with pay and time off.”

  5. “It’s part of the job, but we recognize the disruption with pay and additional time off.”

  6. “It’s voluntary for most people, and we encourage it with pay and time off.”

B: Oncall is part of the job:

  1. “It’s part of the job for all software engineers and not paid additional.”

Being oncall can be quite disruptive in two major ways:

It disrupts your personal plans, outside of work. It disrupts your sleep.

Compensation approaches

Flat rate per week or per day of being oncall Flat rate for standby, plus pay for hours worked outside core hours Only pay for incidents worked on out-of-hours

Several engineers working at the company told me oncall operational load is high, teams are understaffed, oncall is not paid, and someone even used the term “oncall prison,” as quoted above.

What is the reason for the high oncall lead?

Growing too fast Too many custom systems Attrition for experienced people No backfills A barely acknowledged tech debt problem Light at the end of the tunnel

Why are poor oncall practices painful?

They can directly impact software engineer attrition and wellbeing. Simply put, poor oncall practices will lead to more engineers quitting, more people getting burnt out and fewer people recommending a company.

Takeaways

Oncall for software engineers is part of the job. Many companies operate like this, most notably Big Tech – save for Google – and many high-growth startups. The more an employer compensates software engineers, the more likely they expect oncall to be a given. Oncall for software engineers is additional. Companies which care either about healthy oncall practices or want to minimize attrition for software engineers, make it clear oncall is additional and offer some sort of compensation. Compensation may be cash, or it could be time, or it could be lightening the load with dedicated SREs or DevOps people, or making the rotations voluntary.

HarshadRanganathan commented 1 year ago

https://www.docker.com/blog/building-stronger-happier-engineering-teams-with-team-topologies/

HarshadRanganathan commented 1 year ago

https://lucasfcosta.com/2022/08/07/how-to-improve-daily-standups.html

HarshadRanganathan commented 1 year ago

https://sifted.eu/articles/how-to-upskill-engineers/

HarshadRanganathan commented 1 year ago

https://architectelevator.com/cloud/serverless-design-patterns/

HarshadRanganathan commented 1 year ago

https://specbranch.com/posts/one-big-server/

HarshadRanganathan commented 1 year ago

https://holub.com/kpis-velocity-and-other-destructive-metrics/

HarshadRanganathan commented 1 year ago

https://longform.asmartbear.com/posts/extreme-questions/

HarshadRanganathan commented 1 year ago

https://www.nutshell.com/blog/accidental-complexity-software-design

HarshadRanganathan commented 1 year ago

https://medium.com/wise-engineering/platform-engineering-kpis-6a3215f0ee14

HarshadRanganathan commented 1 year ago

https://blog.ceejbot.com/posts/reduce-friction/

HarshadRanganathan commented 1 year ago

https://brooker.co.za/blog/2020/10/19/big-changes.html

HarshadRanganathan commented 1 year ago

https://talktotheduck.dev/external-debugging-tools-3-jmxterm

HarshadRanganathan commented 1 year ago

https://zwischenzugs.com/2022/08/08/who-should-write-the-terraform/

HarshadRanganathan commented 1 year ago

https://www.alexdebrie.com/posts/serverless-framework-vs-cdk/

HarshadRanganathan commented 1 year ago

https://www.priconceptions.com/notebook/remote-jobs-bad

HarshadRanganathan commented 1 year ago
image
HarshadRanganathan commented 1 year ago

Screenshot_20220914-232555_Outlook

HarshadRanganathan commented 1 year ago

20220914_231923

HarshadRanganathan commented 1 year ago

image

HarshadRanganathan commented 1 year ago

 

  Ideal State Current State Problem Root Cause Potential Solutions
Guild Meetings Occurs as planned and gets cancelled occasionally due to overlaps with any other important meetings such as Town Hall Sometimes guilds get cancelled in successive weeks without reason Guild Owners are busy with their project delivery/other reasons/lack of agenda Maybe Guilds should be run by a group of team members rather than one person/replacements
Agenda Agenda is either well planned in advance or topics are gathered & discussed on the fly (lean meetings) Sometimes no agenda/lack of audience/no active engagement from everyone Guild Owners are busy with their project delivery/other reasons so no agenda sometimes Very less participation in the guilds due to lack of awareness/culture/tight delivery deadlines/time zone etc. Below suggestion from Kevin Guild cohort should reach out to teams and build out an agenda based on their pain points/invite them to share their pain points/try different approaches and see what works
Purpose Stays on track with the Guild’s mission/goal statements Sometimes goes off-track discussing items which aren’t relevant to the purpose of that particular guild Guild Owners are passionate to discuss about what interests them/lack of existing space to discuss things (busy calendar for everyone) so Guild is used as the place to discuss anything Rename Guilds to make them more generic/send agenda in advance so only interested/relevant folks join/stay focused on the goals
Outcomes Outcomes are assigned to Team members/Teams Outcomes are tracked Achieved outcomes are demoed Some items no owner is identifiable Lack of interest/lack of clarity as to who should own/deliver on it Assign items to Platform teams backlog/interested teams/individuals – give them the needed support (moral + funding + time) as well
Participation At least teams/members relevant to the guild participate Siloed conversations  e.g. A team actively developing an API in our platform doesn’t participate in the guild  e.g. A team has already built a solution for a problem that the guild is actively discussing about Lack of participation due to less awareness/culture/tight delivery deadlines/time zone etc. Lack of targeted communication Project leads/TLs should encourage their teams to participate  Guild should ensure relevant scum teams are part of the conversation

 

HarshadRanganathan commented 1 year ago

Meetings:

HarshadRanganathan commented 1 year ago

image

HarshadRanganathan commented 1 year ago

image

HarshadRanganathan commented 1 year ago

image

HarshadRanganathan commented 1 year ago

image