Principal Software Engineer
Looking for a Principal Software Engineer to design, develop and implement complicated and difficult software capabilities for computer based systems. Exhibits technical insight and understanding in multiple fields and disciplines with an in depth facility in Software Engineering. Directs the software engineering team in utilizing software development and design methodologies appropriate for the development environment. Work closely with other engineering teams. Candidate should have an inquisitive nature, responsiveness, and excellent testing skills. Must also possess strong troubleshooting skills and the ability to work under pressure with multiple deadlines. Will work in a fast paced, small business environment with our talented team.Security Clearance:A current Top Secret/SCI level US security clearance is required and therefore all candidates must be a US Citizen.Required Skills:Bachelor's degree in technical discipline (ie computer science, engineering, mathematics, etc.). Educational requirements may be adjusted for applicable work experience. Work experience may be adjusted for highly specialized knowledge or uniquely applicable experience.12+ years of experience in Software Engineering, Modern Java Frameworks and Libraries (eg Spring, Guava)Experience designing enterprise APIsExperience in RESTful web servicesExperience in Microservices architectureExperience in Object Oriented Programming (OOP) paradigmsExperience with the Linux operating systemExperience with configuration management tools (eg Git, Nexus, Maven)Experience with the agile software lifecycleHas a proven ability to learn quickly and works well both independently as well as in a team settingPrior experience building up and/or leading a team of software engineersDesired Skills:Experience in cloud based technologies (AWS, Azure)Experience in distributed databases, NoSQL databases, full text-search engines (eg Elasticsearch, MongoDB, Solr)Scripting experience is a huge plus.