As software ages, eventually and inevitably, it’s going to become out of date and misaligned with organizational goals and objectives. Here are four steps for determining the health of your legacy applications and whether or not they are ready for modernization or retirement.
Charity Majors, co-author of Database Reliability Engineering, shared a tweet that drives home how to approach the transition from single applications to a complex, distributed system of microservices.
@mipsytipsy. “Embrace the fact that everything is failing all the time - and it’s okay! We build for resiliency, not uptime.” Charity Majors, Twitter, https://twitter.com/mipsytipsy/status/1134499865335963648.
You can invest a lot in making any single system component reliable, performant, and scalable. The investment is often worthwhile and necessary, but what matters to users is the system’s uptime as a whole. Reliable components aren’t enough to make the entire system reliable if it’s unable to tolerate and recover from failures. Here are some thoughts about building your system for resiliency and two popular microservices patterns to cope with failure.
As the hard work of a software development project comes to an end, there is one last hurdle that teams must jump to ensure a successful outcome: deployment. Strategic planning for a seamless transition is vital, but often overlooked. Nothing gets a client or teammate’s attention faster than finding errors in their production environment. Here is an overview of the repeatable five-step deployment procedure we use to bring a project into its final stage.
We’ve all seen charts of the software development lifecycle (SDLC). They often have a stage with a name such as “operate” or “maintain” that the development team will briefly mention in their enthusiasm to move on to the next stage: building new features. But the operational phase of the software development lifecycle is, in many ways, the most important; it’s where the rubber meets the road.
By making operability a priority for your software, you’re investing in a maintainable present and the data to build the future. Here are four steps effective software development teams take to ensure they get the operational phase right.
Many of us have experienced long-standing issues with a particular product component (ugh! that one checkout cart feature) or the product as a whole. If the product is customer-facing, this can have serious ramifications for your customers, company reputation, and profit margins. If the product is internal facing, it can impact workflows and employee efficiency.