A freelance software developer is a programmer who works on an ad hoc basis, rather than as a full-time employee exclusively bound to a simple company. Freelance developers often work for multiple clients at once, but some might choose to work with one company at a time on a contractual basis.
Freelancing refers to anyone working independently rather than committed to a specific employer, who pays them a consistent salary. Oftentimes a freelancer chooses to work for multiple clients at the same time. One of the learning questions faced in the world of freelancing is whether it is a viable career.