Written By Dong Ma, Open Mainframe Project Ambassador and Software Engineer at IBM
Hello everyone, my name is Dong Ma. I was born and raised in China and currently live and work in Beijing. I have been working as a software engineer for more than 15 years now, and throughout my career, I have had the privilege of being involved in the open source community.
My journey with open source began in 2006 when I joined Hewlett-Packard Company as a software engineer. My first role at HP was to work on Linux enablement testing for HP servers, which exposed me to the world of open source software. During this time, I gained a solid understanding of Linux, from the basic structure and installation to the kernel boot process, system configuration, command line operations, file systems, network operations, and bash shell scripting.
In 2008, I had the opportunity to work on my first open source project: FOSSology, an open source license compliance software system and toolkit, initiated by HP and open sourced under the Linux Foundation. This experience not only introduced me to the open source community and its licenses but also allowed me to grow from a contributor to a maintainer. As a contributor, I focused on implementing new features, contributing code, documentation, and other resources to the project. As I grew into a maintainer, my responsibilities expanded to overseeing the overall direction and health of the project. This included reviewing contributions from other contributors, merging code changes, managing the project’s issue tracker, and making decisions about its future development. In addition to technical implementation, I also learned how to manage an open source project and help numerous Chinese developers participate in the FOSSology community.
In 2015, I moved to a new team in the HPE Cloud BU, which focused on the OpenStack upstream community. Before joining this team, I had limited knowledge of OpenStack and its community. My primary responsibility was to participate and contribute to OpenStack projects to make them better. To achieve this goal, I started by learning about the OpenStack project and its main components, deploying a Devstack environment as my first OpenStack development instance. I then began contributing to the project through documentation and easy bugs, and within the first week, I had my first OpenStack patch merged. Building on my earlier experience with infrastructure and CI/CD pipeline, I then focused on OpenStack infra and testing projects, where I actively contributed to Jenkins-job-builder and subunit2sql projects, with many of my code changes patches merged. I continued to review project patches, and I was promoted to core reviewer for these two projects, serving as a core reviewer for around four OpenStack release cycles. During this period, I also had the opportunity to give five presentations at industry conferences such as OpenStack Summit, LCA2017, LinuxCon Japan, FOSSCON and the other open source conference.
In 2019, I joined the IBM Cloud Infrastructure Center team and had the opportunity to work on Open Mainframe Project’s Feilong. Feilong is a z/VM Cloud Connector that provides virtual resource management for z/VM. Users can manage the VM lifecycle dynamically and automatically without deep knowledge of z/VM itself through REST API. Users do not need to manually provision, manage, and destroy guests. Launched in August 2019, Feilong also provides an SDK to make it easy to develop system management tools. Fundamentally, Feilong allows IaaS/PaaS solutions such as OpenStack or Terraform to consume z/VM by providing REST APIs, making time to market faster. Watch a demo video here.
As a contributor to the project, I support the technical community that helps maintain Feilong and guide it through to meet milestones. One of my primary areas of focus is the Feilong Travis CI system, which is crucial for ensuring the project’s overall quality and reliability. To achieve this, I have been actively involved in developing and maintaining automated testing suites that can run seamlessly on the Feilong Travis CI platform. This involves creating test cases, identifying bugs, and fixing issues, all while ensuring that the test results are accurate and reliable.
This year, I am honored to have been selected to be an Open Mainframe Project Ambassador. In this new role, I’ll be writing more blogs related to Open Mainframe and Feilong as well as speak about it at industry conferences. I also hope to continue expand my contributions and engage in more activities within the Open Mainframe Project.
My journey with open source has been a fulfilling and rewarding experience, allowing me to learn and grow as a software engineer. Through open source, I have had the opportunity to collaborate with other talented individuals, learn about new technologies, and give back to the community. I encourage everyone to get involved with open source, whether it be through contributing to an existing project or starting one of their own. Open source truly is the future of software development!
As someone who has been involved in open source software development, I have found it valuable to share my experience and knowledge with my children. My daughter is 13 years old, my son is 9 years old, and I believe that it’s important to instill in them the values of collaboration, community, and knowledge-sharing. I have taught my children how to work effectively with others towards a common goal, how to be a good team player, and how to communicate their ideas clearly and respectfully. These skills are essential not only in the context of open source software development but also in many other areas of life. I believe that the lessons I have learned through my involvement in open source software development can be valuable for anyone, including my own family. By sharing these lessons with my children, I hope to help them develop the skills, values, and mindset they need to succeed in whatever paths they choose to pursue in life.