Work with developers to design algorithms and flowcharts Produce clean, efficient code based on specifications Integrate software components and third-party