- Work with developers to design algorithms and flowcharts
- Produce clean, efficient code based on specifications
- Integrate software components and third-party programs
- Verify and deploy programs and systems
- Troubleshoot, debug and upgrade existing software
- Gather and evaluate user feedback
- Recommend and execute improvements
- Create technical documentation for reference and reporting