• Architect brand-new software solutions to fulfill project requirements • Collaborate with various stakeholders to determine software requirements • Create and maintain database designs for data storage and processing • Maintain legacy code written by other developers, including bug fixes and improve them • Integrate external software libraries and APIs into existing projects • Lead team development efforts towards successful project delivery • Provide technical leadership to teammates through coaching and mentorship • Maintain high standards of software quality within the team by establishing good practices and habits • Identify and encourage areas for growth and improvement within the team • Collaborate with other software developers, business analysts, and software architects to plan, design, develop, test, and maintain applications built on the latest technologies. • Assist in the collection and documentation of user's requirements, development of user stories, estimates, and work plans. • Lead in peer-reviews of solution designs and related code. • Research and evaluate a variety of software products • Review codes to ensure the team is following the proper coding standards and process of software development • Plan, track, and schedule software deliverables. • Work closely with executive team to plan organizational resource development