The Software Engineer is responsible for software development and addressing current and emerging needs for applications. The role involves utilizing domain knowledge and hands-on experience to develop and implement software programs, creating, maintaining, and improving the performance of existing software code, and writing and updating software code and databases. The engineer will also test and maintain software products to ensure strong functionality and optimization, write test scripts for test-driven development in an agile environment, and build automated procedures to ensure continuous integration and delivery of software. Additionally, the engineer will solve software development and engineering problems and recommend improvements to existing software programs while working effectively with peers and customer software coding teams.