- Develop high-quality software design and
architecture
- Identify, prioritize and execute tasks in the
software development life cycle
- Develop tools and applications by producing
clean, efficient code
- Automate tasks through appropriate tools and
scripting
- Review and debug code
- Perform validation and verification testing
- Collaborate with internal teams and vendors to
fix and improve products
- Document development phases and monitor systems
- Ensure software is up-to-date with latest
technologies