Is there a way to back up agent jobs?
SQL agent jobs are stored in the system msdb database, so backing up that database will do what you need.

In a disaster, you can restore the entire msdb database, or, if necessary, recover individual jobs from a restored copy of msdb:

Serverfault: Recovering a specific job definition from an MSDB backup?

If you want them in a more immediately usable format, you can right-click and script out individual jobs manually, or if you'd like to script out all jobs on the server at once:

Stack Overflow: Automatically create scripts for all SQL Server Jobs