Related Content
Fearless Refactoring, Not Reckless Refactoring Fearless refactoring is the agile concept that a developer should be able to incrementally change code without worrying about breaking it. But it's not believing that you don't need a safety net to detect and correct defects quickly when changes are made—that's just reckless. Here's how to avoid reckless refactoring. |
||
Defensive Design Strategies to Prevent Flaky Tests Flaky tests could be the result of issues in the code, but more often they are due to assumptions in the test code that lead to non-relatable results. There are many reasons that tests can fail intermittently, and some can be easily avoided by applying good defensive design strategies. It's all about making your code agile. |
||
Build Better Teams by Finding Hidden Talents We’re not all created equal, and it’s counterproductive to act like that’s the case on a team. Every individual has their own unique set of strengths, and knowing what everyone’s strengths are contributes to the team’s success. When you're putting a team together, you first have to discover each person’s strong suits. |
||
Shifting Security Left in Your Continuous Testing Pipeline Security is often the black sheep of testing—an afterthought that gets only a scan before release. We have to make security a first-class testing citizen with full-lifecycle support. For the best impact, introduce security testing into the early phases of the continuous testing pipeline. Here are some tools to help. |
||
Building a DevOps Army As you scale DevOps, you need more team members who understand the fundamentals. You could bring in external folks, but they're expensive and in short supply, so start building your DevOps army now by training existing employees. Here's what testers, developers, and IT operations professionals each need to know. |
||
Strategically Using Slack Time after a Release When you've worked for months on a big software release, afterward you may want to jump into the next project. But building in some slack time between sprints is a good idea. After a big release, there will probably be more work as new users discover bugs in your software. Plan for some more testing and development. |
||
Achieve Repeatable Builds with Continuous Integration Continuous integration is essential to provide the feedback needed to keep a team’s code agile. One crucial aspect to a successful CI process is a repeatable build. There are two parts to maintaining a repeatable build: the idioms and practices to define it, and the feedback cycle to maintain it. Here's what you need. |
||
Seeking Feedback the Right Way Receiving negative feedback can be uncomfortable. You may immediately get defensive. But to grow personally and in your career, you need to be able to receive feedback—both good and bad. Here's how to recognize the three types of feedback you will get, and know how to solicit it and respond to it in the right way. |