Software Best Practices. Shared.

The world is better when we share ideas.

The best teams advancing the most innovative ideas are teams that listen carefully, share their ideas (even the ideas that seem crazy), and get curious on how to advance their best ideas. This is difficult, because our world of technology is fast-paced, when seen at a high level. We see our neighbors create incredible ideas, and our first impulse is to work harder to try and compete. Hard work has value, of course, but the competitive mindset easily puts us on the wrong track.

Competitiveness and hard work at our desks often means we stop collaborating. It also means the “crazy ideas” we might have get stored away for a future day when it’s more safe to create. (I’ll share more about Psychological Safety in teams in a future post)

I am a “Type 2 Enneagram:” my goal is to help others. In my work life, my goal is to help professionals like me get better at what they do. They wish to help everyone around them get the best outcomes. As a software-professional, this is a true passion of mine. I’ve found this best as a “DevOps Engineer” or “Build & Release Engineer.” Having a role like this, I help ensure the developers around me get their software out to production with:

  • Great ways to collaborate and plan their work. I can be passionate about certain Scrum ceremonies, and how we can truly bring our best at each iteration.
  • Great ways to store and share our code. Writing code is easy. Sharing code in a group is not always easy. It takes care to be respectful in the issues we write and the pull-requests we review.
  • Great ways to test our code. There are SO MANY different tools to ensure our code is of good quality. Surely, there are many tools I’ve never heard of. There are pitfalls and gotchya’s to each, and when we discuss our best outcomes, we start making our test-code really lock down the best code.
  • Great ways to deploy our software. Truly, we cannot improve what we deploy without being able to repeat it. The process of compiling, signing, packaging, testing, and releasing our code has so much infrastructure embedded in it, and our best practice would be to encode all of that infrastructure: “Infrastructure as code.” Once codified, we can truly improve it for every release.
  • Great ways to collaborate. Colleagues are all over the planet, and even if they’re local, colleagues often work from their homes on many days. There are rich technologies to collaborate remotely. Often, we put up barriers to collaborating well: we’d rather not turn our camera on. We’d rather not reach out to that colleague we’re so different from. To bring out our best, especially as engineers tackling complex problems, we must overcome these barriers.

With this blog, I hope I can share lessons learned, and hear others’ share their lessons learned. We each have unique ways we’ve tackled these kinds of problems. We are technically diverse, and there is magic in that diversity. I hope by creating a forum, we can each bring out change us that bring out our best.

I look forward to the conversation.


Leave a Reply

Your email address will not be published. Required fields are marked *

Theme: Overlay by Kaira Extra Text
Cape Town, South Africa