Role Overview
The Principal Software Engineer is an individual contributor and an expert full-stack developer on an Agile team who is primarily responsible for defining and building software in support of one or more business products. The incumbent will lead a diverse group of Software Engineers and work closely with the Architects to design, develop, and test highly available, secure, and scalable systems.
What You Will Do
Responsible for producing stable and high performing applications from scratch, working in Agile methodologies, contributing toward the entire lifecycle of a user story, and mentoring junior software engineers.
Why It Might Be a Fit
This role is a great fit for someone who is willing to work in a developer-focused team with minimal support from QA, has experience with ASP.Net,.NET Core, C#, Web API, MVC, SQLServer, and React, and is passionate about innovation, accountability, and diversity.
Requirements
- 8+ years of progressive software experience in relevant technologies and 3+ years as a lead
- Computer related Bachelor’s degree is preferred or equivalent work experience in software development
- Hands on experience with ASP.Net,.NET Core, C#, Web API, MVC, SQLServer
- Hands on experience building UI applications with React
- Experience working with any top cloud providers (Azure/AWS/OCI)
- Experience working with Microservices architecture with thorough understanding of Bounded contexts (DDD)
- Demonstrated Experience with Message brokers (Preferably Azure Service Bus/RabbitMQ) in implementing event driven applications
- Experience with containerized applications with Kubernetes and Helm charts
- Experience guiding the team with TDD/BDD practices and maintaining code coverage
- Experience on writing automated tests with any testing framework
- Working knowledge on modern DevSecOps practices
- Experience creating/maintaining DevOps pipelines and best practices
- Experience working on relational and non-relational database queries and procedures
- Experience with Data access patterns preferably EFCore ORM tool
- Good knowledge on design patterns and integration patterns including Microservices
- Experience with Authentication and Authorization best practices
- Experience with GitHub/GIT best practices
- Excellent Communication skills
- Strong Troubleshooting skills
Benefits
- Medical, dental and vision coverage with low deductible & copay
- Life insurance
- Short and long-term disability
- Paid Parental Leave
- 401(k) + match
- Employee Stock Purchase Plan
- Generous Paid Time Off – accrued based on years of service
- 10 paid company holidays
- Tuition reimbursement
- Flexible Spending Account
- Employee Assistance Program
- Sick time benefits – for eligible employees, one hour of sick time for every 30 hours worked, up to a maximum accrual of 40 hours per calendar year
