A full-stack developer is a professional who can work on both the front-end (client-side) and back-end (server-side) of web applications and other projects. This means they handle everything from the user interface a user sees and interacts with, to the server logic, databases, and APIs that make the application function.