- Do Requirement Analysis and impact analysis
- Develop and document Designs for software sub-systems
- Develop software in accordance with the defined software engineering processes
- Create reliable, efficient, maintainable software programs based upon software engineering principles
- Conduct appropriate verification and validation of software sub-systems against their high-level design criteria and functional and performance requirements
- Participate in formal and informal technical reviews, code walkthroughs and other software engineering related quality control activities