Photo of Darío Macchi

I specialize in bridging the gap between code, products, and communities. My profile is defined by its elasticity: while my foundation is deeply technical, my passion lies in sharing knowledge. This versatility is what led me to Developer Relations before the term even existed.

Leveraging my background as a Software Engineering professor at Universidad ORT Uruguay, I act as a technical storyteller. I improve organizational visibility through conference speaking, blogging, and social engagement, translating complex engineering concepts into content that truly resonates with developers.

My ability to connect with the community stems from the fact that I am part of it. I have worked extensively with high-performance architectures (NGINX, Redis) and diverse stacks (JavaScript, Ruby, .Net, and Java). Whether I am tuning a database or optimizing a frontend, I speak the language of developers because I am actively building alongside them.

This technical empathy extends to my management style. Having served as a Project Manager and Scrum Master, I believe in self-managed teams and the growth that comes from collective effort.

Finally, I ground my work in rigor. My Master's degree in Engineering allows me to bring scientific methods into daily development activities—using research not just for theory, but to solve practical industry needs regarding quality assurance and decision-making.

Experience

Software Quality Techniques for agile and traditional projects

Facultad de Ingeniería (UdelaR) - Instituto Nacional de Computación (INCO) - Facultad de Ingeniería (FING) - Centro de Posgrados y Actualización Profesional en Informática (CPAP) - Universidad de la República. - INCO-FING-CPAP

Oct 22-24-26, 2018 (9 hours), Oct 26-27-29, Nov 12, 2020 (12 hours), Oct 11-13-17-27 Oct, 2022 (12 hours)

In this course I teach (along with other professors) software quality topics for agile and traditional teams. The topics covered by me are Shift Left, Exploratory Tests, Lean, PopcornFlow, Agile Jenga game, Behavior Driven Development (BDD), Review Techniques (Karl Wiegers spectrum of formality), Software Inspection process (Gilb & Graham) and Reading Techniques. Addressed to leaders of quality assurance teams and software project managers by the Instituto Nacional de Computación (INCO)-Facultad de Ingeniería (FING) through the Centro de Posgrados y Actualización Profesional en Informática (CPAP).

https://dariomac.com/software-quality-techniques-for-agile-and-traditional-projects https://dariomac.com/software-quality-techniques-for-agile-and-traditional-projects

Talk about Inception Workshop and how we used it

Agiles2015 - Agiles2015 - Hotel Radisson - Radisson Victoria Plaza

Oct 22-24, 2015

Presentation of our Inception Workshop at the annual conference of the Latin American community of agile methodologies. This workshop uses an adaptation of Inception Deck Agile for entrepreneurs to establish/prioritize technology needs and associated technical risks. The talk shows examples of activities/games, success stories and experiences.

https://dariomac.com/inception-workshop-on-agiles2015 https://dariomac.com/inception-workshop-on-agiles2015

Workshop on Software Requirements Management

WBagadion Consulting, Inc. - Bogotá - Colombia

Nov 10-22, 2014 (80 hs)

International workshop, with two of us specialists in Requirements Engineering and another one in soft skills and cultural training. We covered software quality engineering principles, requirement identification, elicitation, analysis, prioritization, specification, modelling, verification, validation and management.

https://dariomac.com/workshop-on-software-requirements-management https://dariomac.com/workshop-on-software-requirements-management

Workshop about reading techniques for software reviews

Facultad de Ingeniería (UdelaR)

2013-2016 (3 hours)

Workshop about reading techniques for software reviews. It was part of a postgraduate course about the software inspection process, particularly the process of Gilb & Graham. Also was aimed to graduate students and professional developers, maintenance teams members and software project managers.

https://dariomac.com/workshop-about-reading-techniques-for-software-reviews https://dariomac.com/workshop-about-reading-techniques-for-software-reviews

Education

Formal Methods and Unified Modeling Language (UML)

INCO - FING UY

Nov 25-27, 2015 - Dictated by Alexander Knapp

Course with the goal of explore UML capabilities and possible format semantics, analyze existing model-checking methods of verification and and introduce an algebraic theory of institutions for describing logical theories and institution (co-)morphisms for expressing relationships.

https://dariomac.com/formal-methods-and-unified-modeling-language-uml https://dariomac.com/formal-methods-and-unified-modeling-language-uml

Certified ScrumMaster

CPA Innovation (Hotel Palladium)

June 2th-3th, 2014 (16 hs) - Dictated by Alan Cyment

Course that consists of two days of presentation, group discussion and experiential/interactive exercises designed to effectively teach Scrum principles and practices. The course itself uses the principles of Scrum, where the learning outcome is driven by the needs of the participants. At the end, the participants will have the confidence and understanding to socialize Scrum at their own teams.

https://dariomac.com/certified-scrummaster https://dariomac.com/certified-scrummaster

“Technical Debt: basic concepts, research methods and study design” tutorial

Universidad ORT Uruguay

April 11-12, 2013 (6hs) - Dictated by Carolyn Seaman

Tutorial covering various tools that experimental sofware engineering researchers may need to address research questions in the field of Technical Debt, like collection and analysis of qualitative data and design of research studies.

https://dariomac.com/technical-debt--basic-concepts--research-methods-and-study-design-tutorial https://dariomac.com/technical-debt--basic-concepts--research-methods-and-study-design-tutorial

“Experimental Methods and Statistical Analysis Applied to Software Engineering Research” tutorial

Universidad ORT Uruguay

Jun 25-27, 2012 (9hs) - Dictated by Marco Antonio Pereira Araujo

Tutorial covering various tools and methods of experimental and statistical analysis that software engineering researchers may need to address research issues in various fields, mainly related to quantitative data and research study design.

https://dariomac.com/experimental-methods-and-statistical-analysis-applied-to-software-engineering-research-tutorial https://dariomac.com/experimental-methods-and-statistical-analysis-applied-to-software-engineering-research-tutorial

“Experimental Software Engineering: using statistics methods to support planning and execution of experimental studies” tutorial

Universidad ORT Uruguay

Jun 13, 2011 (4hs) - Dictated by Guilherme Horta Travassos

Tutorial intends to discuss the principles of experimental software engineering, presenting its main concepts and illustrating how statistical methods can be used to support the analysis of data collected through experimental studies.

https://dariomac.com/experimental-software-engineering--using-statistics-methods-to-support-planning-and-execution-of-experimental-studies-tutorial https://dariomac.com/experimental-software-engineering--using-statistics-methods-to-support-planning-and-execution-of-experimental-studies-tutorial

“Six Sigma Applied to Software Process Improvement” tutorial

Universidad ORT Uruguay

Apr 4-8, 2011 (20hs) - Dictated by Tomás San Feliu

This tutorial seeks to understand the philosophy and quantitative concepts behind Six Sigma and its application to software engineering. The objective of Six Sigma is to achieve a systematic improvement in the quality of products and services through statistical control of processes.

https://dariomac.com/six-sigma-applied-to-software-process-improvement-tutorial https://dariomac.com/six-sigma-applied-to-software-process-improvement-tutorial

Articles

Comparing technical debt in student exercises using test driven development, test last and ad hoc programming

Parodi, E., Matalonga, S., Macchi, D., & Solari, M. (2016, October). Comparing technical debt in student exercises using test driven development, test last and ad hoc programming. In 2016 XLII Latin American Computing Conference (CLEI) (pp. 1-10). IEEE.

Technical Debt is a metaphor that explains a phenomenon that occurs in software development when programmers are faced with trade-off decisions (usually ship first vs. quality assurance). This work analyses the amount of technical debt incurred by undergraduate students using different coding techniques. This observational study uses source code from seventy-five students. We provided students with similar exercises to compare techniques by measuring with static code analyzers (Sonar, FindBugs). The techniques are TDD, Test Last, and ad hoc programming. Our results could not find a statistically significant difference of technical debt incurred by each development practices. Nonetheless, with both tools ad hoc programming measures less technical debt than TDD, and TDD measures less than Test Last. Furthermore, we observed that the two measurement tools outputs are not statistically correlated. Finally, we discuss implications for the research of technical debt stemming from our observations.

https://dariomac.com/comparing-technical-debt-in-student-exercises-using-test-driven-development-test-last-and-ad-hoc-programming https://dariomac.com/comparing-technical-debt-in-student-exercises-using-test-driven-development-test-last-and-ad-hoc-programming

Diagnóstico del Uso de Técnicas de Revisión de Software en Uruguay

Darío Macchi, Martín Solari (2013) Diagnóstico del Uso de Técnicas de Revisión de Software en Uruguay. In XVI Ibero-American Conference on Software Engineering (CibSE 2013).

There are different fault detection static techniques, but the reviews are specials because they don't require the execution of the artifact to be evaluated. The objective of this research is to understand how different artifacts are being reviewed during the software development process. It performs a survey for software development professionals who do activities related to quality assurance and process definition. The survey results show that no formal review techniques are used, but different software artifacts are checked using less formal and systematic techniques (ad-hoc and peer review techniques). Regarding the artifacts, the most reviewed are those which are key to the development process, highly risky for project success and highly visible for the user. These are the requirements specifications and design documents, code and user interface respectively. Since the use of non-formal revisions are large, you can search for process quality improvements by the adoption of practices from more formal techniques such as the use of reading techniques and support tools through ongoing training.

https://dariomac.com/diagnostico-del-uso-de-tecnicas-de-revision-de-software-en-uruguay https://dariomac.com/diagnostico-del-uso-de-tecnicas-de-revision-de-software-en-uruguay

Software inspection adoption: A mapping study

Darío Macchi, Martín Solari (2012). Software inspection adoption: A mapping study. In Conferencia Latinoamericana de Informática (CLEI 2012).

In the technical literature of Software Engineering, references about the benefits of software inspections are abundant. On the contrary, some authors raise the problem of the scarce adoption of this process. From this position, we review the literature to produce a map of the most researched issues in the area, the factors that cause low adoption and possible solutions. The main conclusion was that most of the factors causing low adoption are related to developers' perceptions of the process, lack of training and some characteristics of the process such as rigidity, complexity and the difficulty of connecting the effort made with the quality of the final product. These factors should be studied in future work.

https://dariomac.com/software-inspection-adoption--a-mapping-study https://dariomac.com/software-inspection-adoption--a-mapping-study

Languages