A software agency is a company that provides custom software development services. This can include anything from developing mobile apps, to creating enterprise-level applications, to building websites and web applications.
Most software agencies work with clients on a project-by-project basis. They'll take on a specific assignment, complete it, and then move on to the next project. This can be a great option for businesses that need custom software developed but don't have the in-house resources or expertise to do it themselves. It also allows agencies to build up a portfolio of completed projects that they can use to attract new clients.