Primary Duties and Responsibilities
· Designs, develops and documents technical aspects of software systems and related hardware interface components, based on product and system requirements.
· Provides technical leadership throughout the Agile development process.
· Provides new solutions and works collaboratively with Enterprise Architecture.
· Works with System Administration team supporting production environment, as needed
· Ensures defined quality controls are meet to mitigate defects.
· Provides strategies relating to quality and testing throughout the development process.
· Provides leadership in the advancement of process improvements.
· Works collaboratively within an Agile Scrum team with minimum assistance/guidance.
· Agile champion; participates in an Agile development environment.
· Provides mentoring, technical leadership and guidance to software engineers in best practices and appropriate use of design patterns.
· Maintains current knowledge of new technologies.
· Participates in Sprint Planning, Daily Scrum, Sprint Review and Sprint Retrospective meetings.
· Researches and designs new object oriented techniques and frameworks and incorporates best solutions.
· Performs other duties as assigned.
· Bachelor’ s Degree in Computer Science or related field.
· At least 7+ years hands-on software development or relevant experience.
· At least 5+ years development experience in and Agile environment.
· In-depth software development experience and skills in the following areas:
Object Oriented Development, Service Oriented Development, Security best practices
C#, ASP.NET and .NET Core
Angular 4, CSS, DHTML, jQuery
Xamarin, HTML5, iOS and Android
Microsoft Visual Studio 2015 or higher, Microsoft Windows 2012 or higher
Entity Framework 6.0, Telerik, Crystal Reports
Relational database experience, SQL Server 2012 or higher
· Extensive use of various change control technologies.
· In-depth knowledge of multi-user, multi-tasking software capabilities and constraints.
· Outstanding technical and analytical skills.
· Outstanding team player.
· Experience with self-organizing teams.
· Ability to identify tasks which require automation and automate them.
· Ability to learn new technologies very quickly and resolve any problems involved in integrating new technologies.
· Expert knowledge of standard development tools.
· Outstanding written and oral communication skills.
· Ability to provide technical mentoring to peers.
· Ability to clearly and professionally communicate with Product Manager and Scrum Team.
· Excellent customer service skills.
· Ability to pass a federal background check and obtain a suitability determination preferred.
· Ability to maintain confidentiality with regard to information stored in operational databases.
· Ability to work with computers and the necessary software typically used by the department.