The Principal Software Engineer is primarily responsible for the design, architecture, development, and maintenance of applications, including requirements analysis, customizations, database changes, screen changes, security definition and workflow. ...