Key Responsibilities Conduct thorough analysis of user needs and system specifications. Develop detailed design specifications and documentation including system components and user interfaces. Create prototypes to illustrate the functionality of the software, gather feedback and iterate on designs based on user/stakeholder input.