Contribute to full software development life cycle Write maintainable, extensible, tested code, while complying with coding standards Produce specifications and determine operational feasibility Continuously Integrate and deliver software components into a fully functional product in Production environments Facilitate end to end integration testing with customers Troubleshoot, debug and upgrade existing systems