Senior Software Engineer - Craft Education

Western Governors University•Nashville, TN
•Onsite

About The Position

The Senior Software Engineer for Craft is responsible for researching, designing, developing, analyzing, testing, and implementing software operating or application systems. The role communicates project information to clients, project managers, and other design personnel; maintains productive working relationships with clients and staff; writes and maintains complete documentation; supports teammates in meeting goals and deadlines; and keeps management informed of status and significant problems. The position serves as an expert in assigned software engineering areas and mentors junior engineers. It is accountable for service quality and successful on-time, on-budget, and on-scope project delivery, and contributes as a lead or consultant for at least one team. The engineer communicates across disciplines, shares knowledge, advises on technical risks and dependencies, identifies problems and solutions early, and helps quickly identify and resolve system problems. The role also works with engineering management to identify team improvements and develops testing strategies that balance quality and cost. It interprets functional, non-functional, and implied requirements into designs and code, identifies gaps and risks in requirements, and guides junior engineers in delivering against them. The role is expected to work in Craft’s downtown Nashville, Tennessee office and requires occasional travel of up to 20%, including attendance at designated company summits, typically one to two per year. Other travel may include conferences, company locations, and business events. Craft Education works to address skilled labor shortages by developing work-based learning pathways. Its Craft Connect platform supports apprenticeship degree program administration, data and reporting needs, and the conversion of on-the-job learning into academic credits. The organization also provides technical assistance to organizations launching and managing apprenticeship degree programs.

Requirements

  • Bachelor’s degree in Computer Science, Information Technology, or a related field, or equivalent relevant experience performing the essential job functions. The posting generally defines equivalent experience as one year of experience for one year of education, at the hiring manager’s discretion.
  • At least 6 years of full-stack software development experience, including pioneering new approaches and technologies in engineering.
  • Hands-on experience developing web and cloud-based applications and services, integrating databases, and enabling interoperability with third-party systems.
  • Strong modern full-stack development background using TypeScript/Node.js, Next.js/React, GraphQL, PostgreSQL, and AWS, particularly ECS Fargate, Cognito, and TypeScript CDK; experience with Hono, Auth0, and Casbin for authentication and authorization.
  • Understanding of software development processes, including planning, measurement, coding, testing, reuse, tools, abstraction, algorithms and complexity, security, and basic systems concepts.
  • Ability to use engineering tools and techniques such as database management, user interface development, and inter-process communications.
  • Ability to design applications and systems that meet functional and non-functional requirements, using appropriate design patterns, system decomposition, security, and fault tolerance.
  • Demonstrated capability in one or more design methodologies, such as object-oriented, function-oriented, or data-centered design, and their associated notations.
  • Understanding of the strengths, weaknesses, and practical considerations of different Software Development Life Cycle models.
  • Understanding of Software as a Service and the ability to design for scale, reliability, and cost in a public cloud environment.
  • Ability to use data and metrics to analyze key performance indicators and explain system and subsystem value and operation to users.
  • Ability to partner with Operations to solve system-level problems, understand system capabilities and limitations, and respond urgently to problems.
  • Understanding of the higher education landscape, particularly online higher education, including its competitive environment, opportunities, and feature gaps.
  • Ability to identify technologies or ideas that can advance education platform capabilities or improve platform efficiency, and to use change management processes to support adoption.
  • Strong communication skills, including listening, adapting to the audience, responding effectively, presenting solutions, and managing expectations.
  • Ability to identify, mitigate, or avoid risks and work with leads or managers to ensure risks and dependencies are understood and planned for.
  • Ability to strengthen team cohesion and effectiveness.
  • Occasional travel of up to 20%, including designated company summits and other business-related travel.

Nice To Haves

  • Master’s degree or PhD in Computer Science, Information Technology, or a related field.
  • Experience with Agile/Scrum project development.
  • Experience integrating applications with legacy systems.
  • Experience with cloud-native development and/or porting or refactoring on-site systems to the cloud, preferably AWS.
  • Technical certifications.

Responsibilities

  • Research, design, develop, analyze, test, and implement software operating or application systems.
  • Communicate project information to clients, project managers, and other design personnel, and maintain effective working relationships with clients and staff.
  • Write and maintain complete documentation; support teammates in meeting goals and deadlines; and keep management informed of project status and significant problems.
  • Act as an expert in assigned software engineering areas and mentor junior engineers through formal and informal guidance.
  • Maintain accountability for the quality of services and successful on-time, on-budget, and on-scope delivery of assigned projects.
  • Contribute as a lead or consultant for at least one team and help improve team effectiveness through mentoring, direction, and problem solving.
  • Communicate with other disciplines to identify and resolve problems and contribute to organizational success.
  • Lead teams or cross-functional groups in sharing knowledge through presentations, internal white papers, and other formal or informal methods.
  • Advise teams or portfolios on technical risks and dependencies; identify potential problems and solutions early; and mentor engineers in risk management.
  • Contribute to rapid identification of system problems and lead others in minimizing service restoration time.
  • Assist engineering management in identifying opportunities for team improvement, including training, technical feedback, and emerging problems.
  • Plan and execute testing strategies that maximize quality while controlling costs, applying a practical balance between quality and implementation time.
  • Interpret functional, non-functional, and implied requirements into designs and code; identify requirements gaps, risks, and deficiencies; propose solutions; and guide junior engineers in delivery.
  • Perform other job-related duties as assigned.

Benefits

  • Eligible for bonuses.
  • Medical, dental, vision, telehealth, and mental healthcare coverage.
  • Health savings account and flexible spending account.
  • Basic and voluntary life insurance.
  • Disability coverage.
  • Accident, critical illness, and hospital indemnity supplemental coverage.
  • Legal and identity theft coverage.
  • Retirement savings plan.
  • Wellbeing program.
  • Discounted WGU tuition.
  • Flexible paid time off without accrual.
  • Flexible paid sick time without accrual.
  • 11 paid holidays.
  • Other paid leaves, including up to 12 weeks of parental leave.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service