Organizations in many industries are increasingly adopting Microservices-based Software Architectures (MSAs) for designing, developing, testing and maintaining software systems, in order to scale-up their Development and Operations capabilities. However, transitioning to MSAs is easier said than done.
Migrating to microservices
In our research, we primarily study the migration process to MSAs through a socio-technical lense. That is, we view microservices not only, or even primarily, as a technical solution, but as an organizational solution that involves people, processes, and technology.
Our contributions in this area include:
Decision-making processes for migrations to microservices, and aggregated migration journeys from various organizations and technical solutions used by practitioners (Michael Ayas et al., 2023).
Testing in microservices, particularly related to consumer-driven contract testing (Ayas et al., 2022).
@article{ayas:23,author={Michael Ayas, Hamdy and Leitner, Philipp and Hebig, Regina},title={An empirical study of the systemic and technical migration towards microservices},year={2023},issue_date={Jul 2023},publisher={Kluwer Academic Publishers},address={USA},volume={28},number={4},issn={1382-3256},doi={10.1007/s10664-023-10308-9},journal={Empirical Software Engineering},month=may,numpages={50},keywords={Microservices, Migrations, Grounded theory, Empirical research},}
@inproceedings{ayas:22,author={Ayas, Hamdy Michael and Fischer, Hartmut and Leitner, Philipp and De Oliveira Neto, Francisco Gomes},booktitle={2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)},title={An Empirical Analysis of Microservices Systems Using Consumer-Driven Contract Testing},year={2022},volume={},number={},pages={92-99},keywords={Shape;Microservice architectures;Computer architecture;Software;Best practices;Contracts;Testing;Microservice architecture;consumer-driven contract test;repository mining},doi={10.1109/SEAA56994.2022.00022},}
Microservices-based Architectures (MSAs) are gaining popularity since, among others, they enable rapid and independent delivery of software at scale, facilitating the delivery of business value. Additionally, there are attempts towards understanding practitioners’ roles and technical knowledge. MSAs call for affinity in several technologies as well as business domains. This diversity makes it challenging to scope and describe the roles of practitioners. In addition, practitioners often do not receive training and contents of MSA training remain largely undefined, even though there are challenges in finding or developing relevant technical expertise. In this research, we determine the different technical roles that are required in MSAs, along with their detailed competences. We use public online forums (e.g., StackOverflow), where developers share technical knowledge. We analyze 13,517 public profiles of software engineers, deriving their technical competences. Our taxonomy of technical competences in MSAs, contains 11 competences clusters, organized in 3 collections of competences — Web Technologies, DevOps, and Data Technologies. In addition, we derive the roles of microservice practitioners and the characteristics of their roles. Our findings organize the technical competences of MSAs practitioners and determine the training topics and combination of topics that can prepare engineers for MSAs.
@article{ayas:24:1,title={An empirical investigation on the competences and roles of practitioners in Microservices-based Architectures},journal={Journal of Systems and Software},volume={213},pages={112055},year={2024},issn={0164-1212},doi={https://doi.org/10.1016/j.jss.2024.112055},author={{Michael Ayas}, Hamdy and Hebig, Regina and Leitner, Philipp},keywords={Microservices, Technical competences, Practitioners profiles, Developer roles, Stackoverflow},}
@inproceedings{ayas:24,title={{The Roles, Responsibilities, and Skills of Engineers in the Era of Microservices-Based Architectures}},booktitle={{Proceedings of the 16th International Conference on Cooperative and Human Aspects of Software Engineering (CHASE 2023)}},author={Ayas, Hamdy Michael and Hebig, Regina and Leitner, Philipp},year={2024},isbn={9798400705335},publisher={Association for Computing Machinery},address={New York, NY, USA},doi={10.1145/3641822.3641871},pages={13–23},numpages={11},keywords={microservices, job market, responsibilities, skills, human-aspects},location={Lisbon, Portugal},}