Software jobs include software engineers, software developers, programmers, information technology or network systems specialists, QA testers, or developers who use existing tools, such as business information software, to develop new interfaces for institutional clients. Many of these jobs can be broken down further. For example, some developers work on front-end duties, such as designing interfaces for users. These may be for desktop, mobile, or web applications. Back-end programmers and developers, on the other hand, create the frameworks and logic that dictate how a program works. QA testers often work closely with developers to test programs before being released publicly.