What You Will Do: Estimate, plan, and implement software development work. Work closely with product manager to gather requirements to build new modules or improve existing modules. Evaluate, maintain and improve existing code base to ensure that it is properly structured and utilize software engine