Working in association with senior engineers, perform design, development, coding, testing, research, programming and documentation for software systems, application and/or operating systems in conjunction with equipment designers and/or hardware developers. Perform modeling, designing, and coding activities, employing structured methods. Prepare design documentation for all levels of the software development process. Create and execute unit, integration, system, load and acceptance test plans an scripts. Use software system testing procedures and document results. Analyze software requirements to determine feasibility and design within quality assurance, time and cost constraints.