1. Wiki
  2. /Work

Work

Get it done - the mandate of your job is not do the best you can but get it done even if the means asking for help, more resources, or admitting that things are going poorly.[^get_it_done]

yak shaving - It refers to engaging in a meaningless task that has no obvious relationship to what's supposed to be worked on but may be necessary to troubleshoot a larger problem. The process of making a simple task unnecessarily complicated may also qualify as yak shaving.

Bikeshedding (also Law of triviality) - tendency to devote a disproportionate amount of our time to menial and trivial matters while leaving important matters unattended.

Truck Factor (TF) is a tool to identify concentration of knowledge in software development environments. It states the minimal number of developers that have to be hit by a truck (or quit) before a project is incapacitated.

Resources

Engineering

Soft Skills

Other jobs

Notes

Agile

Four values of Agile

  • individuals and interactions over processes and tools;
  • working software over comprehensive documentation;
  • customer collaboration over contract negotiation; and
  • responding to change over following a plan.

The 12 principles

  • Satisfying customers through early and continuous delivery of valuable work.
  • Breaking big work down into smaller tasks that can be completed quickly.
  • Recognizing that the best work emerges from self-organized teams.
  • Providing motivated individuals with the environment and support they need and trusting them to get the job done.
  • Creating processes that promote sustainable efforts.
  • Maintaining a constant pace for completed work.
  • Welcoming changing requirements, even late in a project.
  • Assembling the project team and business owners on a daily basis throughout the project.
  • Having the team reflect at regular intervals on how to become more effective, then tuning and adjusting behavior accordingly.
  • Measuring progress by the amount of completed work.
  • Continually seeking excellence.
  • Harnessing change for a competitive advantage.

CAP Theorem

The CAP theorem, states that any distributed data store can provide only two of the following three guarantees:

  • Consistency - Every read receives the most recent write or an error.

  • Availability - Every request receives a (non-error) response, without the guarantee that it contains the most recent write.

  • Partition tolerance - The system continues to operate despite an arbitrary number of messages being dropped (or delayed) by the network between nodes.

  • A Critique of the CAP Theorem

[^get_it_done]: Get It Done by Andrew Bosworth