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 RESPONSIBILITIESSoftware 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