Here is our monthly selection of knowledge on programming, software testing and project management. This month you will find some interesting information and opinions about modern software architecture, testing in production, managing software developers, programming paradigms, coaching remote teams, DevOps and open source kanban tools.
Text: Modern-Day Architecture Design Patterns for Software Professionals
Text: Testing in Production: the hard parts
Text: Not everyone is a manager (And that’s OK)
Text: 2020 State of DevOps Report
Text: You’re Not Managing a Team of Software Engineers, You’re Managing a Team of Writers
Text: (Remote) Pairing 101
Text: On Exactitude in Technical Debt
Video: Modernizing an Existing System With a Domain-Driven Approach. Domain-Driven Design (DDD) seems “straight-forward” when looking at green field development. Implementing that in an existing legacy enterprise system, however, is daunting. This presentation goes over some of the refactoring patterns that support this change and demonstrates the steps necessary to refactor a non-DDD SOA-based system using DDD approaches. You will learn the kinds of decisions that have to be made, when they need to be made, and what those decisions look like in the grand scheme of your application refactoring project using Domain-Driven Design.
Video: Programming Paradigms Lost. It is very easy to get stuck in one way of doing things. This is as true of programming as it is of life. Although a programming paradigm represents a set of stylistic choices, it is much more than this: a programming paradigm also represents a way of thinking. Having only one way to think about problems is too limiting. A programming paradigm represents a set of patterns of problem framing and solving; it contains the ingredients of software architecture. As Émile Auguste Chartier noted, there is nothing more dangerous than an idea when you have only one idea.
Video: Build Test Automation Engineers From Scratch Creating test automation engineers from manual testers is hard. Even if your testers are willing, they have a lot of hurdles to get over to feel like the same kind of subject-matter experts in automation as they are in manual testing.
Video: Agile Coaching Toolkit for Remote Teams As most organizations have moved from in-person to remote team Scrum coaching, the Agile coaching tool-set has had to adapt. This talk presents experience that has been gained so far and what are the tools that are most often used.
Video: Distributed Tracing with .NET Core. When something goes wrong in a single .NET application, we get a nice stack trace. In a distributed system, we get almost nothing! We add some logging, but now we have to comb through logs to understand what led to failures. Enter distributed tracing, which provides a true end-to-end view of an operation in our system.
Video: Security Tooling in the DevOps Pipeline In the quest to be first to market, DevOps has been a strategy of choice to improve agility in development teams. As these teams push code to production faster and faster, slow and manual security assessments need to be replaced with new ways for application security assessments. This presentation explains how to deal with security considerations with demos of tools and integrations in action.
Video: Pull Requests: Merging With Your Team Working as developers in Scrum teams, we continuously submit our code to be scrutinized by our peers. With written language being fragile and easy to misunderstand, pull requests can quickly become a breeding ground for demotivation and resentment.
Tools: Mockaroo is a freemium test data generator and API mocking tool. It lets you create custom CSV, JSON, SQL, and Excel datasets to test and demo your software.
Tools: Pokrex is an open source tools that allows making agile estimates and planning easy with Scrum planning poker. It offers multiple story point schemes and custom point schemes to meet different requirements for users: Fibonacci, 0-8, T-shirt (XS-XXL), customized point schemes. You can easily import tickets from JIRA to Pokrex and update points back to JIRA with one click.
Tools: Open Source Kanban Tools If most of the open source projects for Scrum tools have ended being transformed in a limited offer that supports a main commercial product, this has not been the case for Kanban. The simplicity of the Kanban approach has allowed open source software developers to create and maintain Kanban tools based on various platforms.