The Senior/Principal Software Engineer role will play a pivotal role in designing, developing, and maintaining our SaaS platform.
You will work closely with cross-functional teams to implement new features, optimise performance, and ensure the scalability and reliability of our software.
ROLE DESCRIPTION
· Collaborate with the team to understand project requirements and priorities.
· Participate in daily stand-up meetings to discuss progress, challenges, and plans for the day.
· Review code and provide feedback to peers during code review sessions.
· Work on designing and implementing new features or enhancements to the SaaS platform using Ruby on Rails.
· Write clean, maintainable, and efficient code that adheres to coding standards and best practices.
· Troubleshoot and debug issues reported by QA or end-users, providing timely resolutions.
· Collaborate with QA engineers to develop test plans and ensure adequate test coverage for new features.
· Optimise performance and scalability of existing codebase, identifying and addressing bottlenecks.
· Document technical designs, APIs, and deployment procedures to facilitate knowledge sharing and maintainability.
· Participate in meetings with cross-functional teams, such as product management and design, to discuss requirements and provide updates on development progress.
· Mentor junior engineers, providing guidance and support in their professional growth and development.
· Stay up-to-date with industry trends, best practices, and emerging technologies relevant to software development and SaaS industry.
· Contribute to the continuous improvement of development processes and practices within the team.
· Maintain a positive and collaborative working environment, fostering teamwork and innovation.
KEY RESPONSIBILITIES
Software Development: Design, code, test, debug, and deploy high-quality software solutions using Ruby on Rails framework.
Architecture and Design: Collaborate with the engineering team to architect scalable and maintainable solutions that meet the requirements of our SaaS platform.
Feature Implementation: Lead the implementation of new features and enhancements, from conception to delivery, ensuring they align with product specifications and user requirements.
Code Review: Conduct and participate in code reviews to ensure code quality, maintainability, and adherence to best practices.
Performance Optimisation: Identify performance bottlenecks and optimize code and queries to improve the overall performance of the platform.
Quality Assurance: Work closely with QA engineers to develop and execute test plans, automate testing processes, and ensure the reliability and robustness of the software.
Documentation: Create and maintain technical documentation, including design documents, API specifications, and deployment procedures.
Team Collaboration: Collaborate effectively with cross-functional teams, including product management, design, and operations, to deliver high-quality software solutions on schedule.
Mentorship and Knowledge Sharing: Provide mentorship and guidance to junior engineers, share knowledge and best practices, and contribute to the continuous learning culture of the team.
Team Performance and Collaboration: Measure the senior developer's contribution to team performance and collaboration.
Track team dynamics, communication effectiveness, and overall team productivity.
EDUCATION & SKILLS
Bachelor's or Master's degree in Computer Science, Engineering, or related field.
5+ years of professional experience in software development, with a focus on Ruby on Rails.
Strong understanding of object-oriented programming principles and design patterns.
Experience with relational databases (e.g., PostgreSQL) and writing efficient SQL queries.
Familiarity with Agile development methodologies and DevOps practices.
Excellent problem-solving skills and attention to detail.
Strong communication and collaboration skills, with the ability to work effectively in a team environment.
Experience working in a SaaS environment is a plus.
#J-18808-Ljbffr