Participate in requirements analysis Collaborate with internal teams to produce software design and architecture Write clean, scalable code using .NET programming languages Test and deploy applications and systems Revise, update, refactor and debug code Improve existing software Develop documentation throughout the software development life cycle (SDLC) Serve as an expert on applications and provide technical support