Approaches as a Developer to help Improve Organizations

December 23, 2021    Process DevOps Agile Improving-Organizations Productivity

Approaches as a Developer to help Improve Organizations

During my time working as a contractor/staff aug from Omnitech, I’ve observed a lot and experimented with different ways to serve. I think these have helped the whole organization improve as I show these aspects by example and share.

Build reputation

  • Get to know others, show them you care about them
  • Be a servant, be humble do things others wouldn’t (even cleaning up the kitchen or emptying the dishwasher, etc)
  • Enable others on the team to do work
  • Take on troubleshooting
  • Allow others to interrupt you with questions and help them
  • Help with training
  • “Let us therefore make every effort to do what leads to peace and to mutual edification” Romans 14:19
    • communicate more, maybe even more then you think you need to
  • you can’t know everything, be humble, admit it and ask questions

Don’t forget the power of the nudge

Documentation: OneNote or Obsidian

  • Purpose: Share knowledge
  • free from silos in people’s heads and emails
  • save time, send a link instead of having the same conversations
  • On-boarding and project setup documentation
  • Acronyms
  • Domain knowledge
  • When you’ve learned how to troubleshoot, share how to find the issue and how to fix it
  • Make sure that when you leave, others will have enough documented knowledge to run, troubleshoot and add on to what you’ve helped create
  • Value Stream Mapping and Management to help visualize and improve flow of work
  • Map the universe (c4model.com is a good example on how to diagram) of the system
    • Identify the products
    • understanding of how pieces put together
    • background processes that are running

Communication and Collaboration

  • Face to Face meetings (listen, but speak up)
  • MS Teams or Slack if they don’t have Office365 accounts
  • Get more info into Azure DevOps items
  • Break down barriers between teams

Training/Teaching/Mentoring

  • Lunch and Learns and Book Clubs - join or get some started
  • Automated Testing, Architecture, other areas
  • If you notice someone is struggling, find ways to help them
    • Paired programming, check in often, talk to the leader about how to help them
  • Teach Agile practices or Git. Share your expertise
  • Lead meetings when needed

Automation

  • Tests
  • Pipelines
  • Infrastructure (ARM templates/Ansible/Terraform/)
  • Manual work to scripts
  • Installers
    • Replace manually install work with Installers

Cloud

  • Can they move to the cloud? What changes are needed first?
  • Incremental approach?
  • Can the use it for less cost and more efficiently?

Kick start Book Studies, Lunch & Learns, learning opportunities

Feature Teams

  • Cross functional teams that can get the job done together with less wait times
  • Create these around products
    • Make work Visible

Reduce Feedback time

  • Automated tests
  • Feedback from the users
  • break down barriers between teams

Ask “What’s the biggest constraint?” and attack that first

  • Then move to the next one

Retrospectives often

  • What went well?
  • What didn’t go well?
  • What do we need to change to improve?
  • Constantly experiment, learn/reflect and improve