Senior Software Engineer
The Senior Software Engineer role at Granicus is for developers excited to work in a collaborative environment, building robust software solutions that have a tangible impact to governments and the citizens they serve. They regularly take on the most difficult technical tasks and produce simple, elegant, maintainable solutions.
In addition, the Senior Software Engineer works with product to develop features for a nascent product in an exciting, dynamic environment. They use their knowledge of agile methodology to break out complex solutions into small, concrete tasks, enabling their vision to scale across the team.
Finally, the Senior Software Engineer is a go-to technical resource for anyone in the broader Granicus technology organization. They field a wide variety of questions from junior developers: how to test code more effectively, explaining how pushing a git tag triggers a deployment, and how to remain calm while dealing with a downtime incident. They have numerous opportunities to sharpen their mentoring skills.
What You'll Do:
· Architect software solutions and contribute to multiple code bases
· Develop and maintain complex features for multiple applications within the Granicus product suite
· Participate in planning sessions leading to consistently shipping
· Champion the development team's core values
*starting rate may vary by experience and/or location
Who You Are:
· 5+ years of experience developing, testing, shipping, and supporting production-quality web applications
· Rock solid understanding of how the web works at scale: client interactions, synchronous communications and backend queueing systems
· Expert level knowledge of at least one OOP language (e.g., Python, Ruby, C#, Go)
· Ability to adapt to python development environment
· Production experience with data storage technologies: key-value, relational database, document storage
· Knowledge of AWS is preferred but not required
· Experience mentoring junior team members
· Commitment to quality and the craft of software development
· Passion for learning new things and the ability to do so quickly
*starting rate may vary by experience and/or location
Security Requirement
Responsible for Granicus information security by appropriately preserving the Confidentiality, Integrity, and Availability (CIA) of Granicus information assets in accordance with the company's information security program.