As a Newcomer to ROS & Gazebo: Eager to Contribute, Seeking Guidance

I previously worked as an Automation Application Engineer at KOLLMORGEN AUTOMATION AB in Shanghai, where I was deeply engaged in AGV/AMR-related work from October 2022 to February 2025. My daily work revolved around on-site commissioning of AGV/AMR fleets, safety-related design, technical document writing, cross-regional R&D collaboration, customer support & training, pre-sales technical support, and leading major project delivery. For instance, I successfully led the delivery and acceptance of key projects such as 40 AGVs for Guizhou Tire, 15 AGVs for Hefei Semiconductor, and 13 AGVs for Taiwan Cable, accumulating rich practical experience in the field of industrial automation.

In recent months, I have developed a strong interest in ROS (Robot Operating System) and simulation tools, so I took the initiative to learn ROS Humble. During the learning process, I have also been utilizing simulation tools such as Gazebo, Rviz2, and URDF/Xacro for robot development, and I am proficient in using Python and C++ for related programming. This learning journey has made me realize the huge potential of ROS and Gazebo in promoting the development of robotics, and I have a strong desire to give back to the ROS or Gazebo community and make my own contributions.

However, as a newcomer to the community, I feel at a loss about how to start contributing. I have tried to integrate myself into the community by watching Gazebo-related PMC meetings on YouTube to understand the latest progress and development direction of Gazebo. But I still don’t know what kind of work I can do according to my own background and skills, how to find suitable tasks, and how to effectively cooperate with community members.

My work experience at Kollmorgen equipped me with solid capabilities in AGV/AMR system commissioning, safety design, technical documentation, cross-team collaboration, and problem-solving. I believe these experiences can be connected with the needs of the ROS or Gazebo community, especially in scenarios related to industrial AGV/AMR integration and application. But I lack the guidance to transform these experiences into practical contributions to the community.

Therefore, I sincerely hope that there are seniors or experienced community members who can give me some guidance: How can I better integrate into the ROS or Gazebo community? What types of contributions are suitable for newcomers like me? Are there any specific tasks or projects that I can participate in based on my industrial automation and AGV-related background? Any suggestions or guidance will be greatly appreciated.

1 Like

:waving_hand: Hi @stevejake007,

We get this question a lot. Without knowing much about you, your interests, and your time constrains, it is really hard for us to just assign you an issue in a package or a library. As a distributed community, it is difficult for us to play matchmaker, so you’ll need to be a bit self-directed.

The advice I give most newcomers is to pick a tool or package that you use every day, or want to use every day, and have at it. If there is a feature you would like to see, or a function you would like to see improved, you can be the person to make it happen. Every repository has a list of issues and pull requests, and everyone is welcome to address an issue or review a pull request. If you are a little unsure about the scope and priority of an issue, feel free to drop a comment in the issue and talk it over with the maintainer.

Another really good way to get started is to review a pull request. Everyone is allowed and encouraged to review pull requests. Just browse through the recent PRs and find one you are comfortable reviewing. Reviews are a great way to get familiar with the codebase, and if you are doing a thorough job, you’ll get familiar with building and testing the package from source.

Here are a couple of other things off the top of my head:

I’m sure a few other people will chime in here with ideas.

4 Likes