Principal Software Engineer chez Medical Guardian
Medical Guardian · Philadelphia, États-Unis d'Amérique · Hybrid
- Bureau à Philadelphia
Description
About Medical Guardian
Founded in 2005, Medical Guardian is a leading provider of innovative senior health solutions, with 625,000+ active members across the country. The company offers a full suite of connected-care medical alert systems and engagement services that empower older adults to live a life without limits and age safely at home. Medical Guardian boasts a 95% customer satisfaction rate, a #1 ranking on 16 medical alert consumer choice sites and achieves a 4.7+ star rating on Google Reviews.
Medical Guardian is modernizing a large, mission-critical technology ecosystem that supports multiple business lines, including direct-to-consumer, healthcare partners, senior living, and Medicaid-focused offerings.
Our environment spans PHP systems, newer cloud-native services, and a growing IoT backend, offering opportunities to shape architecture, reduce complexity, and improve system reliability at scale.
Role Summary
The Principal Software Engineer is a senior hands-on technical authority within Medical Guardian’s application engineering organization.
This role owns architectural decisions, shared frameworks, and technical quality standards across backend services, IoT-related systems, and customer-facing applications. The Principal Software Engineer is expected to write significant production code, particularly at the framework and abstraction layer, and to serve as the named technical owner for key systems.
This role includes mentorship and line management responsibilities for a small number of engineers, while remaining primarily hands-on and technically focused. The Principal Software Engineer is accountable for both their own technical contributions and the quality of work produced by engineers they supervise.
The Principal Software Engineer reports directly to the Director of Software Engineering and works closely with PMO, DevOps, and senior engineering leadership.
Core Responsibilities
1. Architectural Ownership & Technical Decision-Making
- Serve as the primary technical owner for application architecture for new development, while partnering with existing system owners on architectural decisions.
- Make and document architectural decisions related to:
- Application structure and patterns
- Technology and framework choices
- Integration approaches and service boundaries
- Act as the escalation point for complex technical decisions that would otherwise reach executive leadership.
2. Hands-On Development & Framework Design
- Design, build, and maintain shared frameworks, libraries, and abstractions that reduce duplication and enforce consistent patterns.
- Own cross-cutting concerns such as:
- Authentication and authorization
- Error handling and resiliency patterns
- Logging, metrics, and observability
- Integration standards and service contracts
- Write and review production code primarily in:
- PHP for existing systems
- C#/.NET for new services and modernization efforts
- Encode architectural intent directly into reusable code rather than relying on documentation alone.
3. Technical Quality & Risk Management
- Define and uphold the technical quality bar for new development.
- Make judgment calls on:
- Speed vs. quality tradeoffs
- Fix-now vs. defer decisions
- When technical debt is acceptable and when it is not
- Partner with release and operations leadership to ensure changes are production-safe.
4. Mentorship & Technical Leadership
- Mentor engineers through:
- Code reviews
- Pairing on complex problems
- Design discussions grounded in real implementations
- Unblock engineers who are stuck by stepping directly into code or design challenges.
- Help raise the overall technical maturity of the team through example, not process.
5. Cross-Functional Collaboration
- Partner with PMO to:
- Provide technical input on scoping and estimates
- Surface architectural risks early
- Collaborate with DevOps and infrastructure teams on:
- Deployment patterns
- CI/CD evolution
- Environment consistency
- Communicate technical decisions clearly to engineering leadership and stakeholders.
Qualifications & Technical Skills
Required:
- 8+ years of professional software engineering experience, with a strong record of hands-on development in production systems.
- Experience owning architectural decisions and technical direction for complex applications.
- Strong backend engineering experience using C# and .NET for building services and APIs.
- Experience designing and maintaining clean, well-defined APIs and service interfaces, including integrations with third-party systems (for example, CRM, billing, or operational platforms).
- Hands-on experience with Microsoft Azure, including:
- AKS (Azure Kubernetes Service) for hosting containerized services
- Core Azure integration and messaging services used in cloud-native architectures
- Experience delivering applications using Docker containers and CI/CD pipelines.
- Strong experience working with relational databases (Microsoft SQL Server), including schema design and data access patterns.
- Experience with event-driven or asynchronous architectures, including messaging-based systems.
- Comfort working in existing/legacy codebases while leading modernization efforts.
Preferred/Nice to Have:
- Familiarity with IoT systems or telemetry-driven backends.
- Experience integrating with Salesforce, e-commerce platforms, or other enterprise SaaS systems.
- Working knowledge of Linux-based systems and system administration concepts.
- Experience with monitoring, logging, and metrics, including operating and tuning systems in production environments.
- Familiarity with PHP-based enterprise systems.
Benefits
- Health Care Plan (Medical, Dental & Vision)
- Paid Time Off (Vacation, Sick Time Off & Holidays)
- Company Paid Short Term Disability and Life Insurance
- Retirement Plan (401k) with Company Match