The Senior Software Engineer (Full Stack) designs, develops, and operates software that connects Emulate's scientific instruments with cloud services and user-facing applications to deliver reliable features that drive scientific workflows and insights.
Requirements
- Experience building systems that interact with cloud services and APIs and deliver production web applications.
- Strong engineering fundamentals and SDLC practices (requirements, design, testing, CI/CD, observability, incident response).
- Working knowledge of software security requirements and common frameworks; ability to design with security in mind.
- Experience in TypeScript, React web applications.
- Experience in Go services/APIs (e.g., Echo), REST/gRPC; event-driven patterns.
- Experience with AWS (ECS, RDS, S3); infrastructure and CI/CD tooling.
- Experience with MQTT, Kafka; integration with connected instruments.
Responsibilities
- Lead end-to-end delivery of features that span embedded firmware and ROS/ROS 2 nodes: requirements, design, implementation, verification, release, and sustaining.
- Own end-to-end feature delivery across web front end, back end services, and instrument integrations: requirements → design → implementation → testing → release → operations.
- Design and build secure, scalable APIs (REST/gRPC) and front-end experiences that are resilient, accessible, and observable.
- Collaborate with instrument and embedded teams to enable robust data and control pathways between devices, desktop utilities, and cloud applications.
- Improve our infrastructure, tooling, and developer experience (CI/CD, testing strategy, monitoring, documentation).
- Conduct design and code reviews; uphold engineering best practices, documentation standards, and validated change control.
- Maintain high bar for security and privacy across the stack; contribute to threat modeling and remediation.
Other
- Partner with Product, Scientists, and cross-functional stakeholders to clarify requirements and translate them into epics, stories, and acceptance criteria.
- Excellent communication skills; able to collaborate with Scientists, Product, and multi-disciplinary engineering teams.
- Hybrid work: able to be onsite in Boston at least 4 days/week.
- 4+ years of professional software engineering experience (senior-level scope and autonomy; experience leading multi-component projects).
- B.S. or M.S. in Computer, Electrical, Robotics, Mechanical Engineering