Generative AI in business: a marathon, not a sprint Aug 07, 2023 In this article, Paulo discusses the potential of AI to improve productivity, efficiency, and customer experience and how to be cautious about these gains at scale. Learn more
CI&T has acquired renewable energy certificates (I-RECs) to cover 100% of the electricity consumption of its operations in Brazil. May 30, 2023 To further reduce our environmental impact, starting in 2023, we will also seek to support cleaner and renewable energy. For this reason, all energy consumption from our Brazilian operations has been offset through I-RECs. Learn more
Increasing DEV Power with Augmented Coding Oct 28, 2022 Technological approaches and resources accelerate tasks associated with software development and maintain the quality of actions. This is Augmented Coding. Learn more
CI&T is recognized with the Learning Innovator of the Year Award Mar 20, 2024 CI&T has been awarded the Degreed Awards Visionaries Award in third place in the Learning Innovator of the Year Award category by Degreed, provider of CI&T University platform. Learn more
Site Reliability Engineering: Implementing Better Strategies May 24, 2024 | min read Please select some categories on More Settings section. By Site reliability engineering (SRE) is a powerful software engineering approach to IT operations, helping organizations maintain their systems and applications with greater efficiency. SRE teams employ automation and robust monitoring solutions, tightly integrated within well-defined processes and workflows, to identify and address issues before they become significant problems. This proactive strategy not only reduces costs while maintaining or improving user experiences but also ensures that the organization is better able to make value-driven decisions. Getting Started with SRE It can be difficult for many organizations to readily implement SRE due to lack of resources and expertise. It is a vast and growing body of knowledge that takes hard-to-find expertise to prioritize and intelligently implement.Leveraging partners with SRE capabilities may provide a valuable solution to overcome these challenges. With access to experienced engineers who can direct the development of an SRE strategy and deliver key components, organizations can take advantage of the important benefits offered by SRE. Overall, with proper implementation, SRE can help organizations increase efficiency, reduce costs and maximize value across their systems and applications. Begin with the Fundamentals The foundations of SRE implement a standardized workflow that leverages best practices in order to reduce downtime, improve coverage of service level objectives (SLOs) for critical initiatives, and increase robustness in development and delivery pipelines. There are five key objectives:Resilience. Fundamental to SRE, it is the ability to adapt and fastly recover from interruptions and failures. Platform resilience is important because service interruption can negatively impact the user experience and cause lost revenue. SRE should test platform resilience to evaluate its capability to deal with stress. It can include load tests and disaster recovery scenarios. Monitoring. It is a critical objective for SRE teams as it helps ensure the reliability, availability, and performance of complex systems. By collecting and analyzing data, teams can detect anomalies, identify issues, and quickly respond to incidents. Monitoring is essential for identifying known problems and deviations from expected behavior, and it enables teams to proactively maintain system health, done right it enables a full system observability. By setting and tracking service level objectives (SLOs), SRE teams can continuously improve system performance, reduce downtime, and deliver a better user experience.Scalability. SRE must be able to maintain platform responsiveness during periods of high usage on the one hand and efficiency during periods of low usage on the other. Self-service tooling is most helpful here because it allows platform users to access the resources they need, when they need them while helping reduce the amount of time and effort the SRE team has to put into customer support. Addressing scalability can also improve platform efficiency. We have been able to reduce cloud infrastructure costs by providing client teams with resource monitoring for better usage visibility and tools to continuously adapt and address application scale.Post-incident analysis (PIA). Incidents are inevitable; detecting their approach early and mitigating them improves today’s user experience while PIA improves future user experiences by understanding why incidents occur in the first place and putting systems in place to prevent them. SRE helps ensure that these analyses are blameless and conducted after incidents so that lessons can be learned and improvements made going forward. This practice opens room for the engineers to focus on what is more important and speeds up incident response and mitigation by not always depending on a human to do it.Automation. SRE teams improve their efficiency by automating repetitive tasks. This practice opens room for the engineers to focus on what is more important and keep them connected to coding practices, having to think outside of the box to automate otherwise manual tasks.There are several best practices that organizations should consider when implementing SRE. These include setting clear objectives for system reliability, automating processes where possible, monitoring the right performance metrics in real-time, and establishing a culture of collaboration between development and operations teams. By following these best practices, organizations can ensure that their systems are reliable and running optimally at all times. There were CI&T clients that managed to increase the amount of investigated alerts per month from 27% to 53%, with improvements in both alert accuracy and the collaboration and engagement of developers and business stakeholders.One additional note: It costs teams unnecessary time and money to simply hoover up all available indicator data. At this same client, CI&T made recommendations for logging ingestion (removing unnecessary logs, implementing log-size standards, etc.). These reduced log intake by 7TB a day and logging-related costs by 70%. When evaluating the telemetry that was being ingested and used, it was possible to identify data unnecessary for the business, and removing this data lowered its footprint by 179TB and cloud costs by tens of thousands of dollars a month. Visibility Enables the Right SRE Investment and Value Service levels are an important part of any successful SRE practice because they provide the visibility and accountability required to guide SRE development. SLIs, SLOs, and SLAs are three tools that can be used to ensure the right level of investment for your particular scenario, measure the results, and set the stage for continual improvement in performance of the platform.SLIs (service level indicators) are carefully defined quantitative metrics that measure the performance of any given aspect of the performance or capabilities of the platform. These metrics can include response time, availability, uptime, and more. SLOs (service level objectives) provide targets for the metrics described above that teams can strive to meet, when improving their services. For example, an SLO might specify that a service should have 99.5% uptime or respond within 500 milliseconds.Finally, SLAs (service level agreements) are binding contracts—not necessarily legal or even explicit, but nonetheless considered binding—between the service provider and the platform user that assure a certain level of performance from the former to the latter. An SLA typically includes penalties if the agreed-upon performance targets are not met, as an incentive for teams to ensure they meet their commitments and the user experience does not drop below a critical quality of service level.SLO targets should be tighter than the SLA, so the internal teams can catch and act on issues before they generate any penalties.In one of the successful SLOs implementations it was possible to increase application availability from 97% to 99%—improving the user experience significantly, since it is a much more rare occurrence now that a user is left waiting for the application. By using SLIs, SLOs, and SLAs in SRE practices to boost the visibility of platform performance, teams can measure and improve their software and services while also providing customers with assurance about outcomes. This increases user satisfaction while also allowing teams to improve their products over time continually. SRE Today: Improve the User Experience at a Well-Managed Cost Overall, site reliability engineering is a powerful software engineering approach that can help organizations maintain high system and application standards with greater efficiency. With access to experienced engineers who can direct the development of an SRE strategy and deliver key components, organizations can use SRE services to take advantage of its important benefits. SLIs, SLOs, and SLAs provide the visibility required to keep teams on point and allow organizations to assure customers and improve value.As a result, you can look at SRE as a helpful business strategy to boost user satisfaction while also allowing continual product development and improvement over time. Site reliability engineering should be considered essential for any organization’s IT infrastructure strategy as it helps ensure better end-user experiences with minimal disruption at reduced costs.The team at CI&T works with platform engineering and production readiness review to ensure that the SRE culture is scaled properly, including self-service tooling that allows clients to easily access the services they need and be sure that their systems are reliable and secure.By leveraging best practices and providing self-service tools, we can help our customers achieve their goals while ensuring their systems remain secure and reliable. 0