Role Description
The Senior Software Engineer role at Granicus is for developers growing their technical and software development skills developing products in a SaaS based environment. This role requires strong software engineering expertise in a SaaS environment, with demonstrated ability to apply AI-assisted engineering practices, prompt engineering, and AI/ML integration patterns to improve development velocity, code quality, automation, and customer value across the Granicus platform.
Software Engineers are proficient in multiple different technologies and gain on-the-job experience applying their knowledge and experience in improving the design and quality of our products. They understand the deployment process and support our applications in all environments. As they gain expertise, they share their knowledge with the broader engineering team.
What Your Impact Will Look Like
-
Learn about and uphold the Development team’s core values: Test-Driven Development, Collective Ownership, Agile Development, and Egoless Programming
-
Write high-quality software using test-focused practices
-
Be a core contributor to Granicus's automated testing suites
-
Develop bug fixes and feature changes for at least one application within the Granicus product suite
-
Collaborate with your Scrum team, the Development team, and the broader Product Organization
-
Be a participating member of the broader Granicus technology organization
-
Engineering Velocity: Accelerated delivery through AI-assisted development tools and practices
-
Quality & Reliability: Improved testing, monitoring, and operational resilience through AI-driven SDLC practices
-
Innovation: Introduction of AI-driven capabilities across the platform
-
Customer Value: Reduced manual effort and enhanced accessibility and compliance outcomes through AI-enabled solutions
Qualifications
-
8+ years of professional experience, including 2+ years in leading the design and development of complex software solutions using .NET technologies
-
Minimum of 6+ years of experience as a .NET Developer
-
Proven track record of successfully leading and delivering complex software projects
-
In-depth knowledge of ASP.NET MVC, Web API, and other relevant technologies
-
Proficiency in designing and implementing database solutions using SQL Server or other relational databases
-
Strong understanding of design patterns and architectural principles
-
Demonstrated leadership experience, with the ability to lead and inspire a development team
-
Exceptional problem-solving skills with a focus on delivering high-quality solutions
-
Extensive experience working in Agile development environments
-
Excellent collaboration and communication skills with cross-functional teams
-
Proficient in using version control systems, such as Git
-
Strong passion for learning and staying updated on emerging technologies
-
Experience in creating and maintaining comprehensive technical documentation
-
Ability to conduct and participate in rigorous code reviews
-
Experience in designing and optimizing applications for scalability and performance
-
Hands-on experience with AI-assisted development tools, such as GitHub Copilot, Cursor, or similar tools, to improve productivity and code quality [MUST HAVE]
-
Experience designing and delivering software solutions that incorporate AI/ML capabilities, including AI agents, intelligent workflows, and automation systems
-
Ability to collaborate with product and data teams to identify opportunities to integrate AI-driven features into the platform
-
Understanding of AI/ML system integration patterns, including APIs, model serving, prompt orchestration, and related approaches
-
Exposure to AI ecosystems/frameworks, such as OpenAI, Azure AI, LangChain, or similar technologies, in production use cases
Requirements
-
Integrate AI-driven capabilities into applications to enhance automation, insights, and user experience
-
Leverage AI-assisted development tools, such as GitHub Copilot, Cursor, or similar tools, to accelerate delivery and improve code quality
-
Build and maintain API-driven, service-based architectures that ensure scalability, reliability, and backward compatibility
-
Contribute to improving SDLC efficiency through automation, observability, and AI-led engineering practices
-
Mentor and guide junior developers in best practices and coding standards
-
Collaborate with cross-functional teams to define software requirements and specifications
-
Participate in code reviews to ensure high code quality and adherence to coding standards
-
Troubleshoot, debug, and resolve complex technical issues
-
Stay abreast of industry trends and advancements, incorporating new technologies into our development processes
-
Drive initiatives to improve the overall efficiency and effectiveness of the development team
Benefits
-
Remote-first company with a globally distributed workforce
-
Transparent, inclusive, and safe work culture
-
Employee Resource Groups to encourage diverse voices
-
Coffee with Mark sessions for interaction with leadership
-
Communities focused on wellness, art, family, and more
-
Special guest sessions to discuss impactful issues