What are the responsibilities and job description for the Principal Software Engineer position at ORS Partners?
Overview
Frontline Education is the leading provider of school administration software, empowering strategic K-12 leaders with the right tools, data and insights to proactively manage human capital, business operations and special education. Educational organizations representing over 80,000 schools and millions of educators, administrators and support personnel have partnered with Frontline Education in their efforts to develop the next generation of learners. Frontline is dedicated to driving engagement across K-12 school systems and supporting the continuous improvement of employee effectiveness and efficiency with solutions for proactive recruiting and hiring, absence and time, professional growth, student information systems, special education and interventions, payroll, benefits and financial management. We are seeking a Principal Software Engineer I to participate in the agile development scrum team by leading the designing, building, testing, deploying, and supporting of elegant, scalable and reliable software solutions for our customers. This is a fast-paced and exciting role that provides opportunities to work on many projects. This role reports to the Development Manager and works closely with Development, Architecture, Product, Customer Success, SaaSIO and Strategic Partners to deliver solutions that simplify the daily work life of the front line of education.Responsibilities
Technical Leadership:- Provide expert guidance and oversight on software design and architecture, ensuring scalability, maintainability, and reliability.
- Recommend and champion the adoption of new technologies to address evolving business needs.
- Perform system analysis and recommend ongoing improvements to architecture, scalability, and performance.
- Lead the creation of complex technical documentation and design sketches at a solution level.
- Foster a culture of knowledge sharing by leading and participating in guild activities to expand technical expertise across the organization.
- Oversee the entire software development lifecycle (SDLC) for assigned projects, including design, development, testing, deployment, and maintenance.
- Champion best practices in coding standards and procedures for the team and broader technology organization.
- Develop high-quality, maintainable code by constructing unit tests over complex algorithms.
- Collaborate effectively with engineers across the team and technology organization.
- Lead and facilitate cross-functional meetings to ensure clear communication and alignment.
- Guide and coach team members on effective time management techniques and long-term code maintainability practices.
- Actively participate in functional requirements review meetings with Product Owners.
- Proactively communicate project status, roadblocks, and deliverables to key stakeholders.
- Draw on strong interpersonal skills to foster a collaborative and inclusive environment where all voices are heard, including quieter team members.
- Play an active role in ensuring the team meets sprint commitments.
Qualifications
- Bachelor's degree in Computer Science or a related field
- 12 years of experience in software development with a strong focus on building and maintaining large-scale, enterprise-grade applications
- Proven experience in architecting scalable, maintainable, and reliable software solutions
- Expertise in software development using .NET frameworks (4.5 , Core)
- Experience with Agile methodologies and a strong understanding of SDLC principles
- Proficiency in C# and ASP.NET for building web applications
- Solid understanding of relational and NoSQL databases
- In-depth knowledge of at least one JavaScript framework (React preferred, but experience with jQuery, Node.js, or Vue.js is also considered)
- Experience with CI/CD pipelines for automated testing and deployment
- Familiarity with ORM tools for efficient data access
- Experience with cloud platforms, particularly AWS services like S3, EC2, Lambda, SNS, and SQS
- Understanding of microservice architecture and event-driven architecture principles
- Experience with SaaS/multi-tenant platforms
- Proficiency in container platforms like Docker and Kubernetes
- Familiarity with Apache Kafka or other messaging platforms and caching platforms
- Experience mentoring junior engineers
- Leadership experience in a technical team environment
- Experience in a cloud-native development environment