Code Ecosystem — Improving the development experience
Thank you so much for joining me on this series of articles “Golang: ORM or not ORM at Mercado Libre”.
We went through the introduction of concepts from the Go programming language, relational databases, the SQL language and ORMs, the latter with some examples of packages with a brief description, in the first article to sharing our experiences in this research and analysis in search of the best way to work with databases and the Go language (in the second article).
But in this our last meeting, I would like to briefly introduce you to the team I’m part of, the Code Ecosystem or simply CodeEco, and our main initiatives so far. After all, the best is always yet to come…
The CodeEco team wants to build a more mature, sustainable, resilient and healthy technology development ecosystem. Thus, our work is focused on improving the development experience for each official Mercado Libre stack (Java, Go, Python, NodeJS, Android and iOS) we use internally. Imagine you enter a company of thousands of collaborators, a lot of different programming languages, hundreds of products and countless teams that work together to give the users one seamless experience: where would you start? Well, undoubtedly, by detecting common issues in the developer experience, developing improvements and automations in our stack, and making the documentation accessible for everyone. These are the things we do.
The Code Ecosystem team aims to develop 3 capabilities that contribute to Mercado Libre ecosystem:
- Codability — Building capabilities to write better code inside Mercado Libre,
- Community — Nurturing collective knowledge to build a stronger community,
- Open Source — Fostering Open Source practices to improve collaboration.
In addition, we provide experience and knowledge in the verticals for each official technology stack in the capabilities of:
- Release process & Quality
- Self day-to-day troubleshooting
- Courses / Trainings / Ramp-ups
What have we done so far?
- Compliant toolkits w/RFC cross company: KVSClient, Restclient (development, communication, maintenance and deprecation) for the Python stack;
- Docker Images Maintenance for Python, Java or Go stacks;
- Defining Quality Engine Standards for Python;
- Community maintenance in Python Devs;
- Dependency Catalog: Python dependency extractor;
- PyPI → Nexus migration;
- Py3.5 Deprecated, Py3.8 and Py3.9 Support;
- Open Source: It analyzes the most popular dependencies on our github production repositories, checks its licenses, and detects opportunities and fostering an open source culture within an organization;
- Community: Help to develop a healthy, collaborative and vibrant developer community inside Mercado Libre. Nurturing collective knowledge and organizing spaces to IT people inside Mercado Libre share experiences, knowledge and ideas.
- Sync Tech: It is a fortnightly space created to share and democratize knowledge, products, problems, tools and news related to the implementation of the different technologies we use in Mercado Libre. This space exists to create engagement among our employees and increase diversity and inclusion. These meetings take place through live streaming (which are recorded for later availability) that allow different people from different positions and teams to present topics to an equally eclectic audience that can interact by asking questions and leaving comments.
How do we take advantage of our multidisciplinary team?
The Community and Open Source initiatives have worked with great synergy, seeking at this first moment to improve the understanding and involvement of everyone in the IT area with the Open Source culture. This has been done through the organization of workshops encouraging collaboration in strategic Open Source projects, production of teaching material, seeking out evangelists and interacting with events, such as Sync Tech, introducing participants who are owners or maintainers of Open Source projects (external) to tell about this experience to our collaborators.
Special Thanks
I would like to thank Nahuel Barrios, Laura Guarie, Cecilia Sassone, Rafael Holanda, Vinícius Garcia, Nestor Marsollier and all CodeEco team members: Angelina “Ange” Tresca, Bruno Ingani (Chino), Cristian Vera (Índio), Erick Henrique, Isaque de Melo, Lucas Scaravelli, Macarena “Maka” Pecha, Rodrigo Novas, Lucila Mortara, Marcos Mesmer, Giovanni Almeida, Pamela Rosales and Leandro Colombo. Without the support and encouragement of these people, this article would not have been possible. Thank you so much.