About Smiles
Smiles, the loyalty program of Gol Airlines, is one of Brazil’s leading rewards platforms, connecting millions of customers to a wide range of mileage accumulation and redemption opportunities. In a highly competitive, tech-driven market, Smiles continually invests in innovative solutions to enhance operational efficiency and strengthen its digital infrastructure.
Challenge Overview
With hundreds of AWS Lambda functions distributed across various GitHub repositories, Smiles faced a critical challenge: keeping its serverless applications updated with the latest AWS-supported runtimes. The deprecation cycle of Node.js, the predominant language in the company’s repositories, placed continuous pressure on engineering teams to manually review, update, and test large volumes of code.
This manual process demanded extensive developer hours and carried risks of errors in production environments, along with delays in delivering new features. The lack of a structured approach for identifying outdated functions and applying automated fixes hindered Smiles’ ability to scale infrastructure management quickly and securely.
Solution Overview
Enkel, an AWS partner specializing in generative AI projects, led the development of an automation pipeline to update Lambda runtimes. The project was designed as a clear-scope MVP, focusing on Node.js repositories (which make up the majority of Smiles' codebase) and automating updates to the latest AWS-supported version, Node.js 22.
The solution was structured around two main pipelines, integrated with Amazon Bedrock:
• Collection and Diagnosis Pipeline: Scans repositories to identify current runtimes, storing results in .parquet format for dashboard visualization (via QuickSight or equivalent).
• Update and Fix Pipeline: Uses Claude 3.5 Sonnet to automatically generate the necessary code changes. The AI model is prompted with tailored instructions to ensure only relevant updates are made — preserving business logic, code structure, and module import styles. The pipeline runs tests before and after the updates, opening pull requests for manual review if successful.
The entire architecture was implemented using AWS services such as:
Amazon Bedrock (Claude 3.5 Sonnet) for generative AI
Amazon S3 for inventory storage
GitHub Actions and GitHub Runners for CI/CD
Amazon EKS (Kubernetes) for scalable workflow execution
AWS QuickSight for data visualization
Results and Benefits
The solution had an immediate impact on Smiles’ engineering squads. Key outcomes included:
• Reduced operational time: Tasks that previously took up to 100 hours now require fewer than 10 hours for review and validation.
• Increased productivity: Automation enabled teams to focus on delivering new features instead of repetitive refactoring.
• Standardization and traceability: The pipeline provided a structured foundation for documenting and monitoring future updates.
• Cost savings with third parties: Reduced reliance on external service providers was seen as a strategic advantage.
Although formal financial metrics were still in progress, internal estimates pointed to significant gains in time and operational efficiency.
Expansion and Future Opportunities
The success of the first project phase sparked discussions around future enhancements, including:
• Expanding coverage to other languages (e.g., Python, Java)
• Recurring pipeline execution for each new version cycle
• Integration with Smiles’ internal tools
• Automated evaluation of changes in staging environments
Generative AI proved not only viable but strategic — opening new paths for modernization initiatives.
Conclusion
The Smiles case demonstrates how generative AI, when applied effectively, can transform a critical infrastructure process into an automated, scalable, and secure journey. Enkel delivered a robust solution with the flexibility to grow and extend to other areas within the company.
With this project, Smiles didn’t just solve a technical challenge — it took a major step toward intelligent automation of its engineering workflows.