Software Engineer 4 (Ruby)
Granicus
- Bangalore, Karnataka
- Permanent
- Full-time
- 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
- 5+ years of experience developing, testing, shipping, and supporting production-quality SaaS based web applications
- Expert-level knowledge of Ruby & Rails and related frameworks
- Strong knowledge of front-end technologies such as HTML, CSS, and JavaScript.
- Strong knowledge of at least one related web framework, i.e. React, Angular, jQuery, or others
- Experience with relational databases (MySQL, PostgreSQL, MS SQL)
- Experience developing unit tests, integration tests, E2E tests, load/stress
- Experience testing and/or supporting production-quality web applications
- Experience with AWS or Azure services
- Experience building and maintaining CI/CD pipelines
- Experience with Accessibility is a plus
- Architect and implement scalable and maintainable software systems.
- 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.
- Proven track record of successfully leading and delivering complex software projects.
- Strong understanding of design patterns and architectural principles.
- Demonstrated leadership experience, with the ability to lead and inspire a development team.
- Proven ability to make sound technical decisions and provide architectural guidance.
- 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.