JOB DUTIES: Develop and maintain software applications using programming and scripting languages, business process toolsets, data modeling techniques, and reporting tools to support enterprise needs. Implement new system modules and data layouts by leading design discussions, collaborating with software architects, and documenting functional and technical specifications. Execute full software development lifecycle activities, including coding, unit and functional testing, debugging, and partnering with Quality Assurance to resolve defects. Administer release management processes, including version control, continuous integration and continuous deployment activities, and coordinates with IT teams to ensure successful installation and functioning of applications. Mentor and coach junior engineers, conduct technology overview sessions, and present software demonstrations to leadership and product stakeholders in support of organizational growth and knowledge sharing.