Design, code, test, and troubleshoot software programs and applications. This includes configuring, coding, developing, documenting and modifying software specifications focusing mostly in the coding and implementation, testing & integration and evaluation & maintenance portions of the development life cycle. This includes translating and implementing software requirements/specifications into concise and robust programming code, testing and supporting applications using programming languages and development tools.