The position involves designing, developing, troubleshooting, and debugging software programs for enhancements and new products. The candidate will implement new customer requirements and features in our existing application, maintain and enhance the existing code base by investigating and resolving problem areas. Clear communication and presentation of solutions through documentation, flowcharts, and well-structured code are essential. Collaboration with cross-functional teams to design and develop software programs is expected. The role also includes providing technical guidance and mentoring for more junior engineers. Occasional travel to customer sites may be required, but it will be less than 10%.