Develop and maintain application software; troubleshoot and rectify application software problems. Analyze user needs: design, write and execute programs in a variety of programming environments; Collaborate with business analysts or users to translate business requirements into technical specificat