Senior Software Engineer
DC
Description

Choisys is a proud Service-Disabled Veteran-Owned Small Business (SDVOSB) and a SBA certified 8(a) Business Development Program participant. We deliver Higher Value through customer-centric solutions that drive innovation and adapt to evolving mission requirements – with well documented success on numerous programs within the Civilian, Defense, and Intelligence communities. We are experts in IT Service Delivery processes and industry best practices, continuously integrating the framework of our ISO 9001, 20000, and 27001 certifications to achieve service excellence. Choisys combines empirical methodologies and lessons learned with leading-edge solutions to solve complex problems, provide ongoing support, and deliver quantifiable benefits. Our mission focus areas include, but are not limited to, PMO Support, Health IT, Education + Learning, Infrastructure Management, and Cyber Security. 


We are seeking a Senior Software Engineer with the following skills in the Washington DC area. The position requires a candidate to have an active Secret Security Clearance.  


This position is for a Senior Software Engineer to support the FBI’s Training Division by applying engineering approaches to the development of software. This engineer would be responsible for development and maintenance of .NET based web applications and services. Responsibilities could include all aspects of the software development life cycle including requirements analysis, design, development, testing, integration, and deployment. This engineer would be responsible to ensure the application of systematic, disciplined, quantifiable approaches to our development products using sound engineering principles in order to produce software that is maintainable, scalable, and efficient.


  • Ensure developed software adheres to foundational software development principals such as SOLID (including DRY), Loosely Coupled Design, Proper Cohesion, DRY, etc.
  • Research and define coding standards and good design principals for use within our team
  • Collaborate with team lead and lead architect to design software which leverages appropriate technology and is consistent across components.
  • Support requirements adherence effort by ensuring requirements can be met w/capabilities of the proposed system
  • Conduct code reviews and mentor other software developers.
  • Design and Develop .NET based web application functionality using C#.
  • Build responsive internet applications using JavaScript, jQuery and other client-side frameworks.
  • Develops and maintains REST Web APIs.
  • Design and develop applications using Agile development and SCRUM processes.
  • Must be analytical, detail oriented and able to translate functional requirements into web-based solutions (i.e., web applications) using advanced technologies. 
  • Conduct automated unit and integration tests of product functionality following established testing processes or procedures.
  • Research complex technical problems and propose effective and efficient solutions or designs.
  • Research and identify new technologies and developmental tools. 
  • Perform other duties as assigned.
Requirements
  • Bachelor’s degree or higher in Computer Science (other degrees will require Government approval)
  • Strong understanding of abstraction, advanced techniques, best practices, and design patterns.
  • Strong understanding of Object-Oriented Design and Development.
  • 8+ years demonstrated experience as a software developer and applying software engineering principles.
  • 5+ years demonstrated experience developing applications using C#.
  • 5+ years demonstrated experience developing ASP.NET based applications.
  • 5+ years demonstrated experience with .NET framework
  • 1+ years demonstrated experience with .NET Core
  • 2+ years demonstrated experience with at least one of these frontend JavaScript frameworks: Angular, React, Vue.
  • Experience developing engaging and user-friendly user interfaces that conform to accessibility standards.
  • Significant experience with client-side technologies such as HTML, JavaScript, jQuery, and Ajax.
  • Some experience developing and working with microservices architectures and Web APIs.
  • Experience with databases, preferably SQL Server
  • Proficient with ORM technologies (Nhibernate, EntityFramework, etc)
  • Strong problem solving and analysis skills, self-motivated, and able to work and communicate in a team environment.

Choisys Technology, Inc. is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, creed, sex, sexual orientation, gender identity, national origin, disability, or protected Veteran status. The candidate must have the ability to sit for long periods of time, ability to discern colors, ability to read and monitor a computer screen for an extended period, 100% requirement to work on site.