The Senior Software Engineer will be responsible for working with software architects on design specifications, reviewing software design specifications, writing code, guiding junior developers, reviewing code, writing unit tests, collaborating directly with customers at times, and working collaboratively with the Quality Assurance team