ROS2 Beginner's Guide: Version Selection, Environment Setup & Career Prospects

A complete beginner's guide to ROS2 covering concepts, setup, version selection, and career outlook.
This guide introduces ROS2 (Robot Operating System 2) for beginners, explaining its core concepts as a robotics SDK rather than an OS. It covers version selection strategies, step-by-step Ubuntu virtual machine environment setup, common troubleshooting tips, and an overview of ROS2-related career opportunities and salaries in the booming robotics industry.
The Age of Intelligent Robots Is Here — ROS2 Is a Must-Learn
From humanoid robots dancing on the Spring Festival Gala stage, to robotic vacuums quietly working at home, to service robots delivering meals in hotels — intelligent robots have permeated every aspect of our lives. Behind all of these smart machines, there's one core technology powering their software development: ROS2 (Robot Operating System 2).
Since the 1970s and 1980s, driven by advances in computing, sensor technology, and electronics, robotics has rapidly expanded from traditional industrial manufacturing into areas like home services, healthcare, education and entertainment, search and rescue, and military applications. Traditional industrial robots (such as robotic arms in automotive factories) could only execute pre-programmed instructions — hardly what you'd call "intelligent." But when artificial intelligence merged with robotics, robots started to "get a brain" — robotic vacuums can autonomously map environments and avoid obstacles, surgical robots can assist with precision operations, and drones can carry out complex reconnaissance missions.
With the explosion of AIGC technologies like ChatGPT and DeepSeek, artificial intelligence is giving robots unprecedented levels of intelligence. It's fair to say that the convergence of robotics and AI will transform our lives as profoundly as the internet revolution did.
What Exactly Is ROS2? Core Concepts Explained
Not an Operating System — It's a Robot Development Toolkit
Many beginners see the name "Robot Operating System" and assume ROS2 is an operating system like Windows or Linux. In reality, ROS2 is essentially an SDK (Software Development Kit) — an open-source development framework for building robot applications, composed of a set of software libraries and tools.
Hardware is the body of a robot, but software gives an intelligent robot its soul. ROS2 is the core framework of that "soul." It provides a distributed, modular architecture with unified abstract interfaces, which is crucial for ultra-complex systems like intelligent robots. All technologies built on ROS2 follow its specifications, supporting distributed communication and modular development.
From ROS1 to ROS2: Why You Must Choose ROS2
After years of development, ROS has produced two major versions: ROS1 and ROS2. ROS1 is gradually being phased out while ROS2 is on the rise. The new version offers qualitative improvements in performance, security, and real-time capabilities, making learning ROS2 the smartest choice right now.

ROS2 Version Selection: Stable Release or Rolling Release
Since its first release in 2017, ROS2 has been updated frequently. There are currently three mainstream versions available, but it's important to note that different versions are not directly compatible with each other. If you have a project built on an older version and want to run it in a newer environment, you'll either need to switch versions or modify configurations for compatibility.
The recommended approach is to use the latest stable release (with maintenance planned until May 2029), rather than the Rolling development release. While the Rolling version supports the latest features, it's less stable than official releases and isn't suitable for beginners.

ROS2 Application Prospects & Career Development
Typical Application Scenarios
ROS2 has an extremely broad range of applications:
- Autonomous Driving: Major automakers' driver-assistance systems all have ROS2 behind the scenes
- Industrial Automation: Collaborative robots widely deployed in smart factories
- Drones & Mobile Robots: From military reconnaissance to hotel delivery services
- Medical Robots: Precision-assisted surgical operations
After mastering ROS2, you'll have many directions to choose from: mobile robotics (computer vision, path planning, decision-making algorithms), industrial robotics (kinematics, dynamics, path planning algorithms), and more. The robotics industry is still a blue ocean — far from reaching its technological ceiling, with vast room for research and exploration.
ROS2-Related Job Salary Overview
Based on data from recruitment platforms, ROS2-related positions offer very attractive compensation:
- Robotics Development Engineer: 30,000–40,000 CNY/month, 16-month salary, bachelor's degree acceptable
- Navigation Algorithm Engineer: 35,000–60,000 CNY/month, master's degree preferred
- Motion Control Algorithm Engineer: 30,000–50,000 CNY/month
- Depth Perception Algorithm Engineer: 30,000–35,000 CNY/month
These positions generally require proficiency in ROS2, C++, and Python, with some requiring a master's degree. In terms of tech stack, ROS2 + C++ + Python is the standard combination.
ROS2 Environment Setup in Practice: Four Steps to a Complete Dev Environment
Step 1: Install VMware Virtual Machine
The ROS2 development environment needs to be built on a Linux system. For developers using Windows, the recommended approach is to run Linux through a VMware virtual machine rather than installing directly on Windows (Windows support is limited to Win10 with many restrictions).
Key considerations when installing VMware:
- Version 17.x will work fine
- Do not install to the C drive — choose another partition with sufficient space
- Activation keys for the corresponding version can be found online
Step 2: Install the Ubuntu Operating System
Ubuntu is a Linux distribution and the officially recommended OS for ROS2. The Ubuntu version must strictly match the ROS2 version:
- Latest ROS2 version → Ubuntu 24.04
- Previous ROS2 version → Ubuntu 22.04
If the versions don't match, the probability of running into problems is very high. It's recommended to download the corresponding ISO file from the official website or a mirror source.

Recommended virtual machine configuration:
- Processor: 1 processor, allocate as many cores as possible (e.g., 16 cores)
- Memory: Minimum 4GB, 8GB preferred
- Disk: Minimum 20GB, recommended 40–50GB
- Network: Use NAT mode, don't change it casually
Step 3: Configure Domestic Mirror Sources to Speed Up Downloads
Ubuntu's default software sources are hosted overseas, resulting in very slow download speeds. The first thing to do after installing the system is to switch the software source to a domestic mirror (such as Alibaba Cloud).
The graphical method is the simplest: open "Software & Updates," and select the Alibaba Cloud mirror server in the download source settings. Alternatively, you can use the command line: sudo apt install software-properties-common.

Step 4: Resolve Common Virtual Machine Issues
A freshly installed virtual machine typically has two common issues that need to be resolved:
Screen Auto-Resize Issue:
sudo apt update
sudo apt-get install open-vm-tools
After installing open-vm-tools, the virtual machine screen will automatically adapt to the host machine's resolution.
Copy-Paste Issue:
- First, confirm that the "Guest Isolation" drag-and-drop and copy-paste options are enabled in the VM settings (this must be done while the VM is powered off)
- Install the desktop component:
sudo apt-get install open-vm-tools-desktop
- After restarting the virtual machine, you'll be able to freely copy and paste between the host and the VM
Summary & Learning Recommendations
ROS2 is the essential gateway into the field of robotics development, but it's a starting point, not the finish line. After learning the basics of ROS2's communication framework, you'll need to dive deeper into algorithms and architecture design, and choose a specific direction for continued specialization.
For beginners, environment setup is the first hurdle. Keep these key points in mind:
- Version matching is absolutely critical — the Ubuntu version must correspond to the ROS2 version
- Prioritize stable releases over rolling releases
- Switching software sources to domestic mirrors can prevent a host of download issues
- Basic VM configurations (screen adaptation, copy-paste) should be resolved before you start actual development
The robotics industry is in a blue-ocean phase, with technology far from reaching its ceiling. Whether in terms of career prospects or technical depth, it's well worth investing the time to study systematically.
Related articles

Generating 10 Web Games with One-Line Prompts: A Hands-On Claude Code Experience
A senior developer uses Claude Code to generate 10 playable web games including 2048, Gomoku, and Tetris with one-line prompts in under an hour. A deep dive into AI programming's real capabilities.

Five Essential Cursor Skills Every QA Engineer Needs: A Complete Breakdown
A detailed guide to five essential Cursor Skills for QA engineers: PRD analysis, test case generation, JMeter scripting, load test reports, and web automation.

DiffusionGemma: Google's Open-Source Diffusion Language Model with 4x Faster Inference
Google releases DiffusionGemma, an open-source diffusion language model achieving up to 4x faster inference and real-time self-correction by generating text in parallel rather than token by token.