Programmer Analyst Job Description

Programmer analysts are information technology specialists who apply their knowledge of programming and business analysis to develop business solutions and applications tailored to an organization's specific needs and business requirements. The programmer analyst's job is to collect the necessary data, consult with senior staff to determine the specifications, and then to write the code to create the required application.

Programmer analysts plan and develop business solutions and test them for errors, evaluate end users' requests for modifications, and use structured analysis and design to outline the steps necessary to create the program. They analyze and develop specifications, determine feasibility, assess the program's compatibility with the existing systems used within the organization, and estimate project costs and time. 


Programmer analysts must have excellent computer programming skills, and an advanced knowledge of database, modelling, and programming languages and techniques. They must have a good understanding of software design and development tools and techniques.

These professionals must have an excellent knowledge of business processes, development methodologies, and operating systems, including Windows, Linux, and Unix. They must know how to prepare diagrams and flowcharts to demonstrate the steps necessary  to complete a program, and be able to convert project specifications into detailed instructions.

Teamwork skills are very important because programmer analysts regularly meet with other members of the project team to identify requirements, estimate budgets, and clarify project objectives. The ability to communicate technical information to non-technical staff is essential to the role.  

Programmer analysts must also be very good listeners, and to be able to solicit project details from the client or the management team. Outstanding problem-solving and analytical skills are crucial, as these professionals must be able to determine the specific requirements of any given project, and to do the research necessary to make the right recommendations. For this reason, programmer analysts must always keep their knowledge of technology up to date, and invest in continual professional development.

Time management skills, the ability to prioritize tasks, to work well under the pressure, and meet deadlines are essential in this line of work.


Programmer analysts must have a bachelor's degree in computer science, information technology, software engineering, information systems, software development, computer engineering, or a related discipline. Most employers will look to hire candidates with at least two years of relevant professional experience.


The work of programmer analysts combines that of project managers, who are usually responsible for the analysis of project requirements and clients' needs, with that of analysts, who are responsible for modelling, and computer programmers, who write program code.

Programmer analysts' duties can vary depending on the nature and scope of the project, but they typically include modelling and writing programs in accordance with specifications, approving specifications, making recommendations regarding various business solutions, testing and debugging program code, analyzing existing solutions to identify opportunities for improvement, writing the technical documentation, and providing IT support and maintenance.

Programmer analysts usually work as part of development teams for software publishers and IT services companies, or in information systems departments of larger firms.   


Image Credit: European Parliament


Related: Programmer Analyst Salary