Job DescriptionPlans, designs, develops, and tests software systems or applications for software enhancements and new products used in local, networked, cloud-based or Internet-related computer programs. Develops software and tools in support of design, infrastructure and technology platforms. Using current programming language and technologies, develops code, completes programming, and performs testing and debugging of code.Skills & ResponsibilitiesResponsible for the design, development, testing, troubleshooting, measurement, optimization, and improvement of software, new products, and code libraries across platforms.Contributes to domain expertise which leads to product enhancements & industry breakthroughs.Partners with cross functional experts (Product Management, Design, etc.) to determine customer focused solutionsLeverages best practices, articulates ideas, & markets them across team and organization. -Promotes a culture of continuous learning.Is comfortable with taking reasonable amounts of riskLeads application/framework/service design efforts, optimizing for quality, testability, and scale.Uses appropriate & relevant programming languages and technologies, writes code, tests & deploys to meet business requirements.Interacts with customers to define requirements and identify necessary modifications.Communicates clearly with the team and management to define & achieve goals.