Cai - Washington, DC
posted 3 months ago
As a Software Developer at CAI, you will be responsible for designing, coding, and maintaining efficient and reliable computer programs. Your primary goal will be to ensure that these programs meet user requirements and adhere to specifications while continually improving and updating existing software for optimal performance and functionality. This full-time position requires you to work onsite in Washington, D.C., and candidates must be within a commutable distance. In this role, you will program computers by developing, running tests, and maintaining current computer programs that provide instructions for the computers to follow. You will be tasked with developing, designing, and testing logical structures for solving problems through computer programming. Your responsibilities will include writing programs according to specifications provided by Software Engineers, Systems Analysts, or other computer scientists, as well as updating, repairing, modifying, and expanding existing computer programs. You will convert data from project specifications and statements of problems into computer programs, applying your knowledge of programming techniques and computer systems. Additionally, you will prepare flowcharts and diagrams to illustrate the sequence of steps the program must follow and describe the logical operations involved. You will analyze workflow charts and diagrams, conferring with supervisors and representatives of concerned departments to resolve questions regarding program intent, data input, output requirements, and internal checks and controls. Your role will also involve reading manuals, periodicals, and technical reports to learn ways to develop programs that meet user requirements. You will formulate plans outlining the steps required to develop programs, design computer terminal screen displays, and convert project specifications into detailed instructions and logical steps. You will enter program codes into the computer system, input test data, and observe the computer monitor to interpret program operating codes, correcting any errors that arise during testing. Furthermore, you will analyze, review, and rewrite programs to increase operating efficiency or adapt them to new requirements, compiling documentation of program development and revisions along the way.