Senior Principal Software Engineer

Job Description

As our Sr. Principal Software Engineer, you will be a member of our software leadership team.  As such, you will be responsible for technical design of product solutions, management of our offshore development teams, and delivery of efficient and viable code as necessary. Your day to day responsibilities are outlined as follows. 

Technical Design (40%): 
Own and manage the technical design for the product which means you will: 
Lead technical discussions and decision-making processes to establish best practices and design principles;
Lead and assist with delivery of technical discovery, prototypes and proofs-of-concept;
Understand and approve technical architecture decisions for the product;
Work with the Product Owner and Business Analyst to plan roadmaps and translate these into actionable backlogs and deliverable milestones; and
Collaborate with other technical owners on related products to align technical solutions and architecture; 
 
Management of Offshore Development Teams (40%): 
You will be responsible for managing the development work and delivery output for a distributed engineering team based in two different countries.  We are counting on you to:
Foster an engineering culture focused on rapid delivery with confidence while ensuring quality through code reviews, collaboration with QA engineers, and mentoring of junior team members; 
Drive the development effort for end-to-end, on-time delivery of high-quality solutions that meet feature requirements and fulfill team commitments as well as assessing and managing the technical risks throughout the development lifecycle;
Support backlog grooming activities by providing clarity to the development team as they review and update individual stories;
Measure and report on metrics to demonstrate the product development team’s delivery, quality and efficiency; and
Proactively evaluate the development teams’ current approaches, workflows, and technologies, and present improvements to offshore leadership that can enhance the development process. 
    
Software Development (20%): 
You will serve as an additional development resource when there is downtime on the part of the offshore teams to include: 
Investigation and troubleshooting of unexpected product behavior in the production environment
Implementation and delivery of solutions to high-priority issues impacting customers in the production environment
Implementation of complex or mission-critical functionality that supports the team to deliver milestones on time and on budget
 


Requirements
  • Passionate about StraighterLine’s mission and vision.
  • Bachelor's degree in a related field or equivalent experience.  
  • 8+ years of experience in software engineering roles, including as a technical lead or senior developer, with demonstrated leadership experience within a Scrum team.  
  • Expert knowledge of modern web application architectures and technologies.  
  • Development experience with AWS in a serverless environment.  
  • Experience with DevOps practices, CI/CD pipelines, and related tools.  
  • Proficient in React, Next.js, Node.js, and related technologies.  
  • Desirable secondary skills include PHP, .NET, MySQL, and NoSQL.  
  • Experience with BigCommerce, Stripe, or Moodle is a plus but not required.  
  • Experience working with remote, distributed teams.  
  • Proven ability to collaborate effectively within a team and across product development teams.  
  • Proven ability to communicate and collaborate with stakeholders across the organization to understand business needs and expectations.  
  • Strong written and oral communication skills.