• Contribute to all stages of software development lifecycle• Design, implement and maintain applications that can be high-volume and low-latency• Analyze user requirements to define business objectives• Envisioning system features and functionality• Define application objectives and functionality• Ensure application designs conform with business goals• Develop and test software