Senior Full Stack Software Engineer - NREC
Carnegie Mellon University · Pittsburgh, PA · 2 mo ago
EngineeringFull-time
About the role
The Senior Full Stack Software Engineer will play a pivotal role in designing and delivering scalable, end-to-end software solutions that power data-driven robotics applications. This role involves owning end-to-end development of features across the backend, frontend, and data layers, collaborating with a multidisciplinary team, and contributing to the advancement of the department's initiatives.
Responsibilities
- Owning end-to-end development of features across the backend, frontend, and data layers
- Building reliable, scalable backend services that power core product capabilities
- Designing and maintaining data systems that support both structured and unstructured information
- Crafting polished, responsive user interfaces using modern frontend approaches
- Shaping intuitive user experiences through thoughtful design and usability principles
- Translating user feedback, product insights, and analytics into product improvements
- Collaborating closely with a multi-functional team to deliver cohesive, high-impact features
- Developing interactive data visualizations and exploration tools that help users make sense of complex information
- Shaping long-term technical direction through architectural decisions
- Maintaining strong engineering standards through testing, documentation, and code review
- Diagnosing and resolving issues across the full stack to ensure a smooth, reliable user experience
- Sustaining a team culture that values learning, knowledge-sharing, and supportive collaboration
Requirements
- Bachelor’s degree or equivalent experience in Computer Science, Engineering, Mathematics, or a related technical field
- 4+ years of professional experience developing full-stack applications
- Experience working in Linux-based development environments
- Solid understanding of core software engineering principles, patterns, and protocols
- Proficiency in modern backend and frontend programming languages; Python experience strongly preferred to ensure alignment with the team’s existing stack
- Hands-on experience with both relational and non-relational data systems, including data versioning or related tooling
- Experience designing and implementing database architectures
- Ability to translate product requirements and user feedback into thoughtful technical solutions
- Clear, effective technical communication skills
- Ability to collaborate with experts within a multidisciplinary team, including product managers, software architects, data engineers, and other developers
- Commitment to a respectful and supportive team environment
Preferred Qualifications
- Experience with data orchestration or workflow tools
- Familiarity with software security concepts such as authentication, authorization, and endpoint protection
- Exposure to cloud platforms or distributed computing environments
- Data processing workflows (pre-processing, augmentation, post-processing) experience
- Background in building tools or interfaces for data exploration or analytics
- Interest in mentoring or supporting teammates as the team grows