Analyzes, designs, programs, debugs, and modifies software enhancements and/or new products used in local, networked, or Internet-related computer programs. Code may be used in commercial or end-user applications, such as materials management, financial management, HRIS or desktop applications products. Using current programming language and technologies, writes code, completes programming, and performs testing and debugging of applications. Completes documentation and procedures for installation and maintenance. May interact with users to define system requirements and/or necessary modifications.