We sat down with Perficient Latin America's Head of Performance Engineering, Carlos Zuluaga, to discuss Perficient Latin America's approach to performance engineering, lessons learned when scaling performance engineering, and his journey to becoming a top performance engineering outsourcing expert in Latin America.
Performance engineering is one of the core disciplines at Perficient Latin America, and we pride ourselves on developing software outsourcing projects that incorporate best practices and optimize an application's performance from the onset. To achieve high levels of expertise in the field, Perficient Latin America's performance engineering outsourcing team is continuously learning, experimenting and refining their skills and methodologies in order to provide our clients with world-class solutions to their software engineering needs.
In this installment of our tech-oriented interview series, we go into the specifics of Perficient Latin America's approach to performance engineering with PSL´s Head of Performance Engineering, Carlos Zuluaga.
Carlos' long trajectory in performance engineering began rather serendipitously. However, thanks to many years of hard work and careful study, Carlos has become one of Latin America's authorities on performance engineering. At Perficient Latin America, he leads a team of highly skilled software engineers that work to, not only enhance their projects' performance testing processes, but also act as trusted consultants during the design and development process in order to assure the applications perform optimally from the moment they go into production. This level of dedication allowed the team to achieve a 200% improvement in system performance in just 6 months for one of Perficient Latin America's clients, as well as create a proprietary performance engineering tool that reduced data processing times from days to mere minutes.
In today's video interview, Carlos discusses how he first got into performance engineering and what drove him to continue finding ways to improve systems' performance, how clients stand to benefit from working with a nearshore software development firm with a strong performance engineering background, and how Perficient Latin America implements performance engineering best practices transversally across projects.
As we've covered in previous posts, there's a notable difference between implementing performance testing and adopting a performance engineering mindset. The previous focus heavily on designing and running the tests that will ensure a system runs smoothly under different loads and strains, while the latter orients all efforts towards creating systems and applications that, not only display high-performance levels under various circumstances but have high levels of speed, availability, and responsiveness from the start. This difference is key to ensuring an application is ready to go live from the start.
Rather than focus efforts on identifying flaws in the system that can contribute to slow performance or even crashes, a performance engineering team will identify and find the places in the project where performance can be optimized in order to meet industry standards and generate competitive advantages. Likewise, performance engineering teams help development teams validate performance at every step of the process, making sure the application is as "combat-ready" as possible when it goes into production.
The advance of modern technology has brought with it higher customer demands and expectations, with software that fails to perform or even takes longer than usual to do so unceremoniously kicked to the curb by the casual user. This means companies need to place system performance and performance engineering high on the priority list, as a misstep can easily spell disaster for any application and its company's bottom line.
Firstly, companies that implement performance engineering ensure their application's UX is stable and reliant. A satisfied user helps applications retain their customer base and grow business. Secondly, performance engineering reduces system and hardware costs as inefficiencies are detected and routine performance checks reduce operational overhead and require fewer resources to manage. Lastly, performance engineering allows teams to detect potential issues early, such as bottlenecks and poor scalability, long before they can affect the application's performance and even before the final product is deployed.
Interviewer: Thanks for sitting down with us.
Carlos Zuluaga: Okay, I'm quite excited to be here.
Interviewer: Good! We're excited to hear all about performance engineering. So, how did you get into performance engineering?
CZ: So, when I started working in a data center deploying a huge application, it was one of the biggest applications in Colombia at that time, and for almost 3 or 4 months, the application crashed every day. I started to think, "Okay, what can we do about it?" And performance engineering came as the answer to that. So, I started, like, slyly working in certain projects.
Interviewer: And what are the benefits to our clients of performance engineering?
CZ: I would say that, first, to predict the quality of the product; to make sure what are those, not functional, but technical features of the products we are building, but mostly I would say that both the Perficient Latin America team that is developing the product and the customer will be ready to go live if they do performance engineering from the beginning.
Interviewer: How is Perficient Latin America making sure they're applying performance engineering in all its projects?
CZ: Inside Perficient Latin America we have a performance engineering team, we have several groups and study groups in which we have weekly meetings to discuss how should we do performance engineering, and we also have teams that coach other teams. So, we have, let's say, like a senior performance engineer, engineers, that are helping other projects.
Ready to build high-performing applications? Call Perficient Latin America.