Building a system of microservices to support your business’s operations is a challenge faced by architects and executives at companies large and small. Orchestrating flows of data and actions across many services and servers without breeding complexity that slows your development and saps your agility is demanding. Data streaming services are an excellent option for connecting your microservices, maintaining efficiency, and controlling costs. Here’s how to get started connecting your microservices with the data streaming service Apache Kafka.
Moving your software development teams from working on operational to strategic goals is essential to your company's innovative future. However, the best developer’s time is too often occupied working on existing business solutions, which greatly hampers their ability to work on future business. Even if you had an unlimited budget to hire new resources, without an infusion of the tribal knowledge diffused among your existing teams, those new hires might have too much to learn about your environment to be immediately productive.
As a technology leader in your organization, many of your decisions come down to allocating resources: balancing and prioritizing risk and reward, stability and velocity, the present and the future. In an ideal world, technical debt would always be addressed before it started accruing interest. Long-term maintenance and operations expenses would be accurately weighed against the short-term development expenses that could mitigate them.
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.
Many companies have long had some proportion of remote employees, but relatively few have taken the capability of managing remote employees to its logical conclusion of being entirely office-optional. In 2020, we’re all jumping into the remote-first experiment with both feet. There will be some awkwardness and issues, but this can and should be seen as a learning opportunity as well. Issues that once affected only a distant minority will now affect everyone, top to bottom. That temporary discomfort will be the impetus for rapid improvements in remote work that could otherwise have taken years.
As remote work becomes the new norm, leaders need to ensure the right structures and tools are in place for their teams to be successful. The DragonSpears team has been working remotely for years, so we put together various perspectives and insights to shed light on productive remote work and successful remote team relationships.