Software Engineer
Software Engineering Institute | Carnegie Mellon University · Pittsburgh, PA · 1 wk ago
EngineeringFull-time
About the role
We are seeking a Software Engineer to design, develop, and support mission-critical applications and data systems using Python and Microsoft SQL Server. Working closely with business stakeholders and technical teams, you'll build reliable, scalable, and user-focused solutions that support our organization's mission. We're looking for a curious, growth-oriented engineer who takes ownership, solves complex problems, and continuously builds expertise in our systems and business.
What You'll Do
- Software Development
- Design, develop, test, and maintain applications and services using Python.
- Write clean, maintainable, and scalable code following established engineering best practices.
- Build and support RESTful APIs; experience with FastAPI, OpenAPI/Swagger, or similar frameworks is preferred.
- Design, develop, test, and maintain applications and services using Python.
- Participate in code reviews and help maintain high standards for quality, consistency, and reliability.
- Improve application performance, automation, and development processes through continuous refinement and innovation.
- Leverage AI-assisted development tools responsibly to improve productivity, code quality, and user outcomes.
- Design, develop, and maintain SQL Server databases, queries, stored procedures, functions, views, and jobs.
- Analyze and optimize database performance using indexing, query tuning, and execution plan analysis.
- Troubleshoot database issues and support production problem resolution.
- Monitor scheduled jobs, data processing workflows, and system integrations to ensure reliable operation.
- Collaborate with database administrators and infrastructure teams to maintain performance, availability, and data integrity.
- Partner with business stakeholders and technical teams to understand requirements, evaluate tradeoffs, and deliver effective solutions.
- Create and maintain technical documentation, including system architecture, data flows, process diagrams, and operational procedures.
- Mentor junior engineers through technical guidance, code reviews, and knowledge sharing.
- Help establish and maintain Python development standards and engineering best practices.
- Take ownership of technical challenges while balancing user experience, business needs, reliability, security, and long-term maintainability.
Who You Are
- You enjoy solving challenging problems and building software that delivers meaningful value.
- You are comfortable working across the full software development lifecycle—from requirements and design through implementation, deployment, and production support.
- You communicate effectively with both technical and non-technical audiences, value collaboration, and take pride in delivering reliable, maintainable solutions.
Required Qualifications
- Professional experience developing software with Python.
- Experience working with Microsoft SQL Server, including complex queries, stored procedures, functions, and performance optimization.
- Experience designing and consuming RESTful APIs.
- A strong understanding of software engineering principles, design patterns, testing practices, and source control.
- Ability to analyze complex technical and business problems and develop practical, scalable solutions.
How You Work
- Curious and eager to learn new technologies, systems, and business domains.
- Builds institutional knowledge to better understand users, systems, and organizational goals.
- Takes ownership, works independently, and knows when to seek guidance.
- Communicates clearly and collaborates effectively across technical and business teams.
- Values documentation, maintainability, and long-term system health alongside feature delivery.
How You Think
- Focuses on user needs and business outcomes when making technical decisions.
- Considers reliability, security, scalability, and maintainability as core engineering responsibilities.
- Embraces an AI-native approach to software engineering, using modern AI tools to accelerate learning, improve quality, and enhance productivity.
- Continuously looks for opportunities to improve products, processes, and team effectiveness.
Preferred Qualifications
- Experience with FastAPI, OpenAPI/Swagger, or similar frameworks.
- Experience mentoring developers or providing technical leadership.
- Experience working in Agile environments.
- Experience with enterprise applications, CI/CD pipelines, automated testing, or containerized deployments.