Computer and software engineers design the complex integration system required for computer hardware and software to effectively work together. If a problem arises somewhere within the system, it is the responsibility of the computer and software engineer to find and resolve the situation.