Summary: The Senior Manager will assist the CTO with the technical management and direction of software development activities including the overall design of new software components, the implementation of industry best practices and standards, the establishment of priorities and the delivery of software products and solutions. Senior Manager’s primary responsibilities include: ensuring AAMVA’s standards are met in the design, R & D, product engineering, distribution, and help desk management of assigned applications. Responsibilities include day-to-day team management including managing a team of developers, software corrections, and long-term enhancement of software applications targeting a variety of platforms and operating environments.
Essential Duties and Responsibilities:
- Design, develop, test and release reliable, scalable, efficient and innovative software.
- Provide technical direction for the design, development and release of software products and solutions through the software definition phase to implementation.
- Manage and direct a team of software engineers.
- Apply knowledge of industry trends and developments to improve software design.
- Review, advance and approve all software design enhancements and initiatives.
- Evaluate software and database components to ensure efficiency and scalability.
- Construct and implement development work breakdown structures and plans.
- Manage technical aspects, software development and implementation for projects.
- Provide accurate and timely status report information to the departmental head and the project manager regarding development progress, issues and risks.
- Define, communicate and enforce software design, development and code standards.
- Establish software development patterns and identify reusable code for shared library.
- Work closely with infrastructure and security departments in implementing successful solutions.
Direct Reports to this Position: Four (4) Software Engineers
Formal Education: BS in Computer Science or related subject. Equivalent job experience may substitute for degree.
Must have skills:
- 10+ years of applicable work experience: producing designs, programming, configuration management, producing software documentation, and writing software specifications
- Several years of experience developing and managing a team of software engineers in a .Net environment.
- Several years of extensive experience in multiple operating environments.
- Bachelor’s degree
- At least 10+ years of hands-on development experience as a senior developer or technical team lead building applications using the .NET Framework, .Net core, C#, Visual Studio 2017 or higher
- 10+ years of experience of building high-performance Web Services (REST, gRPC, SOAP), 1-2 years’ experience building cloud native applications preferably in Azure cloud
- Extensive experience with design patterns, system architectural concepts and frameworks and a strong understanding of object oriented principles.
- Technical expertise in building and tuning multi-threaded high performant .NET/.Net core applications. Strong server-side development skills designing and developing high traffic applications in a fast paced environment
- Experience with UI technologies such as Angular
- Experience with CI/CD
- Experience with agile development and scrum methodologies
- UML experience is nice to have
- Outstanding verbal and written communication skills are mandatory
- Excellent Organizational Experience
- Broad experience working with a wide range of managers, developers, other departments in IT organization and business folks is required.
Disclaimer Statement: The preceding job description has been written to reflect management’s assignment of essential functions. It does not prescribe or restrict the tasks that may be assigned.
AAMVA is an Equal Opportunity Employer—M/F/D/V