Job title: Senior or Principal Software Engineer
Company: Douglas County
Job description: Senior or Principal Software EngineerEmployment Type: 0 – Full-time Regular
Pay Range: $108,823.00 – 180,655.00
Location: Castle Rock, CO
Overtime Exempt: Y
Elected Office / Department: INFORMATION TECHNOLOGYThe Principal Software Engineer is responsible for advancing Application Services’ technologies and practices, and leading the analysis and design, development, testing, maintenance, and support of Douglas County business applications implemented in software to ensure effective application services delivery and support enterprise strategies. The person in this role is also responsible for working with Information Technology (IT) Infrastructure Services to ensure server platform and security needs of applications are met. In coordination with the IT Project Management Office, the person in this role will assist in defining project scope, requirements, and timeline.This position is based in Colorado and may be eligible for a hybrid work schedule.Qualifications, education and experience as it relates to the position will be taken into consideration when determining hiring salary.
Senior Software Engineer: Generally, the hiring range is $108,823-$136,029 annually.
Principal Software Engineer: Generally, the hiring range is $120,437-$150,546 annually.Douglas County offers an excellent comprehensive benefit package including but not limited to: Medical/Dental/Vision/Retirement. For a more detailed overview please view the full .ESSENTIAL DUTIES AND RESPONSIBILITIES: Key duties and responsibilities of the Principal Software Engineer position include, but are not limited to, the items listed below.
- Leads the evaluation of new platforms, software libraries, development tools, and processes and makes recommendations that will improve the team’s effectiveness and capabilities.
- Leads the development and communication of best practices covering development technologies, implementation patterns, integration techniques, design options and application security.
- Acts as a technical leader in a team-based, agile development environment.
- Provides direction and mentoring to Application Services staff assisting them in resolving technical issues and applying best practices.
- Designs and develops software, which meets the requirements of the business in an effective, sustainable, and reliable manner.
- Tests developed software prior to user acceptance.
- Adheres to established IT best practices, standards and agreed upon design patterns for application development, application design, user interfaces, integration, naming, and testing.
- Analyzes and understands business users’ requirements, clarifying inconsistencies, conflicts, or ambiguities, to effectively model business processes in software.
- Documents software designs, applications support requirements, application configuration information, as required.
- Integrates custom and commercial off-the-shelf software in an effective, sustainable, and reliable manner.
- Works toward achieving I.T.’s Mission, Vision, and Values.
- Performs other duties as assigned.
SUPERVISORY RESPONSIBILITIES: This position may have direct supervisory responsibility over other Information Technology positions, and will lead technology and practices evaluation efforts, provide technical project leadership and mentoring to Application Services staff.SUPERVISISION RECEIVED: This position reports to the IT manager. Performs duties under general supervision; tasks are expected to be completed with substantial independence.INDEPENDENT JUDGMENT: Incumbent is given broad terms and format, allowing a great amount of latitude and individual judgment to accomplish goals and achieve desired results.MINIMUM QUALIFICATIONS:EDUCATION and/or EXPERIENCE:Senior Software Engineer:
- A Bachelor’s degree in Computer Science, Management Information Systems or a closely related field from an accredited college or university is preferred.
- A minimum of eight years of experience in designing, developing, and testing applications developed in a mainstream objected oriented language.
- A combination of experience and education may be considered for a well-qualified candidate.
Principal Software Engineer:
- A Bachelor’s degree in Computer Science, Management Information Systems or a closely related field from an accredited college or university is preferred.
- A minimum of ten years of experience in designing, developing, and testing applications developed in a mainstream objected oriented language.
- Two years of supervisory or project management experience is preferred.
- A combination of experience and education may be considered for a well-qualified candidate.
KNOWLEDGE, SKILLS, AND ABILITIES:Knowledge:
- Strong knowledge of professional software engineering practices, software quality assurance practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
- Knowledgeable in application integration best practices, event driven processing, and API development.
- Well-versed in systems integration, application architecture, application security, database design, and object-oriented design.
- Knowledgeable in enterprise architecture and associated frameworks.
- Familiar with low-code application development is helpful
- Working knowledge of waterwall and agile methodologies.
- Understand artificial intelligence and machine learning.
- Familiar with ITIL for IT Service Management.
Technical Skills:
Frontend Development:
- Expertise in React.js, TypeScript, JavaScript (ES6+), HTML5, CSS3, and responsive design principles.
- Strong understanding of common front-end architectures including SPA, Static Sites, and Server-Side processed architectures.
- Demonstrated experience with multiple frameworks (e.g. React, Angular, Vue, ASP.NET)
- Proficient with one or more UI tools kits (Mantine, Material-UI, Bootstrap). Mantine experience very helpful.
Backend Development:
- Proficiency in C# and .NET 8 required, with experience on .Net Framework 4.x desired.
- API design and development using common patterns (REST, SOAP, GraphQL, WebHooks, etc…)
- Experience using ORMs such as Entity Framework and Dapper.
- Familiarity with commonly used design and architectural patterns for developing web applications with demonstrated experience implementing them on the .Net technology stack. (MVVM, MVC, DI, CQRS, etc…) Experience with CQRS design pattern is helpful.
Database Development:
- Experience with relational databases (e.g., SQL Server) and familiarity with NoSQL databases.
- Advanced TSQL skills with demonstrated experience writing complex queries, stored procedures, and functions.
- Mastery of data modeling practices including normalization/denormalization and schema design.
- Skills in analyzing inefficient queries to improve overall system performance.
- Understanding of query execution plans, indexing strategies, and partitioning
- Experience with report development using a common reporting service such SSRS or Power BI is helpful.
Other Skills:
- Cloud Computing: Strong knowledge of Microsoft Azure platform services, including Azure App Services, Azure Functions, Azure SQL Database, Entra, and Virtual Networks in a hybrid cloud/on-prem environment.
- Version Control: Proficiency in Git and Git-based workflows is required.
- DevOps: Familiarity with CI/CD pipelines in ADO and integration with GitHub
- Security: Understanding of secure coding practices and application security principles.
- Integrating Identity management using Entra ID and other providers such as LoginRadius
- Python and PowerShell scripting
- Experience integrating with SharePoint Online is helpful.
- Experience developing on the Power Platform is helpful.
- Experience developing on and/or integrating with Dynamics 365 is helpful.
Abilities:
- Competent in planning and managing software quality assurance activities throughout the SDLC to ensure security, reliability, efficiency, and maintainability.
- Establish effective working relationships at all levels.
- Work as a part of a team or independently, using both verbal and written communications, to resolve problems, complete project related tasks, and interface to Douglas County departments.
- Clearly document technical configurations and summarize technical information.
- Identify problems, establish facts, correlate data to a series of events, effectively evaluate risk, and develop logical plans of action for implementing and troubleshooting solutions.
- Develop strategies and proposals tailored to an intended audience.
- Envision and describe in sufficient detail to inform planning future states of processes, technologies, data, and organizational structures/roles.
- Interpret an extensive variety of technical instructions and environments in written, mathematical, or diagrammatic form and understand abstract and concrete concepts.
- Keep up-to-date technically and apply new knowledge to your job.
- Adhere to County guidelines and standards.
- Ability to lead and mentor technical professionals.
- Ability to effectively communicate status information, coordinate technical direction, and resolve technical and personnel conflicts.
- Strong work habits, organization, and time management skills.
CERTIFICATIONS, LICENSES, & REGISTRATIONS: This position requires successful completion of a criminal background check including fingerprinting through a national database.WORK ENVIRONMENT:Physical Work Environment: Work is performed in a typical office environment. Ability to work beyond scheduled hours and respond to production issues and business needs in a time critical manner is required. This position has frequent contact with coworkers, staff, and other County employees either in-person or remote depending on the situations.Physical Demands: Ability to drive between County buildings for meetings and off-site work locations is required. Close vision required for heavy computer use. Must be able to communicate well verbally and be heard/understood. May be required to give presentations in meeting or to working groups. May occasionally lift items weighing up to 25 pounds.Material and Equipment Directly Used: Typical office equipment such as computer, phone, tablet, copier/scanner, etc.ADDITIONAL INFORMATION:Closing Date: 5/2/2025 5:59PM MST. Review of applications will begin immediately and continue until a suitable candidate is selected.The job details outlined in this posting may represent a modified summary of the full job description. For a full copy of the job description to view our job classifications.In the event of an emergency/disaster in or near the County, all County employees are expected to make every effort to be available to assist the County Manager, Elected/Appointed Officials and Department Directors to ensure the continued operation of any and all necessary County functions. This may mean being available to perform additional duties and hours beyond what is normally required. In the event that an exempt employee does work more than 40 hours a week in support of County operations during an emergency, such employee may receive overtime or other appropriate wage compensation in accordance with existing County policies or at the discretion of the County.
Expected salary: $108823 – 180655 per year
Location: Castle Rock, CO
Job date: Thu, 27 Mar 2025 23:04:25 GMT
Apply for the job now!