Key Responsibilities
● Design, develop, and maintain high-performance backend systems with Ruby, ensuring scalability and reliability.
● Engage in collaborative efforts with cross-functional teams to conceptualize, architect, and implement new features that enhance our SaaS offerings.
● Understand existing features and define the best short, medium, and long-term strategy to migrate or re-architect systems to support our SaaS platform’s growth and scalability.
● Conduct thorough code reviews, upholding the highest standards in coding practices and aligning with the company's engineering guidelines.
● Proactively identify and address performance bottlenecks, ensuring the efficiency and responsiveness of our services.
● Design and implement robust and maintainable APIs that support both internal and external integrations.
● Work closely with product managers, designers, and fellow engineers to understand requirements and deliver high-quality solutions.
● Create and maintain technical documentation for systems, APIs, and processes.
● Proactively engage in knowledge sharing across teams and the organization, promoting a culture of learning and development.
● Collaborate with support teams to troubleshoot and resolve technical issues promptly.
Qualifications
● A Bachelor's or advanced degree in Computer Science, Software Engineering, or a related discipline.
● 7+ years of hands-on experience in designing, developing, and operating web applications using the latest, production-proven Ruby on Rails Technologies.
● Experience in developing web applications / APIs with Ruby on Rails.
● Solid understanding of API design principles and RESTful services.
● Proficiency in working with databases, both SQL and NoSQL.
● Familiarity with cloud platforms, especially AWS or similar.
● Strong problem-solving skills and the ability to troubleshoot complex issues.
● Excellent collaboration and communication skills.
● Experience in managing incident response, including efficient discovery, thorough investigation of root causes, prompt resolution, and implementation of permanent solutions.
● Hands-on experience with test design, creation, and operation using documentation or testing tools like RSpec, Minitest, Jest, Playwright or similar.
● Proficiency in tuning middleware components, including database optimization and performance improvement strategies.
● Previous exposure to design, development, and operation of service-oriented or microservices architecture, demonstrating an understanding of scalable and modular architecture.
● Experience in architecture design and technology selection, showcasing the ability to make informed decisions for optimal solutions.
● Flexibility and adaptability to work with diverse technology stacks, with a willingness to learn and catch up on Java/Kotlin or Frontend technologies in order to optimize our new systems.
Desirable Skills
● Familiarity with Java, Kotlin, React, or Vue.js.
● In-depth expertise in designing, developing microservices architecture and later maintaining microservices.
● Experience with containerization and orchestration tools such as Docker and Kubernetes.
● Previous exposure to a SaaS environment will be considered an advantage.
Bachelor's or advanced degree in Computer Science, Software Engineering