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