Posted 3d ago

Principal Software Developer (Backend Focus- primarily C++)

@ AspenTech
Houston, Texas, United States
OnsiteFull Time
Responsibilities:design backend, build APIs, mentoring teammates
Requirements Summary:8+ years in C++, strong OO design, backend development, gRPC, distributed systems, CI/CD, testing (TDD), MES/OT familiarity.
Technical Tools Mentioned:C++, gRPC, SQL Server, Oracle, Git, Docker, Kubernetes, TFS, SAFe, Testing (TDD)
Save
Mark Applied
Hide Job
Report & Hide
Job Description

The driving force behind our success has always been the people of AspenTech. What drives us, is our aspiration, our desire and ambition to keep pushing the envelope, overcoming any hurdle, challenging the status quo to continually find a better way. You will experience these qualities of passion, pride and aspiration in many ways — from a rich set of career development programs to support of community service projects to social events that foster fun and relationship building across our global community.

The Role

The driving force behind AspenTech’s success is our people. Our passion, ambition, and commitment to pushing boundaries fuel continuous innovation. You’ll experience this in many ways—through extensive career development programs, support for community service initiatives, and internal events that strengthen collaboration across our global organization.

AspenTech is seeking a Principal Software Developer to design and develop backend-focused components—primarily in C++—that power our modern Manufacturing Execution Systems (MES) applications. This role requires deep technical expertise, strong architectural thinking, and hands-on development skills. You will work closely with agile teams, architects, and Product Management to deliver high-performance, scalable, and maintainable software solutions. While primarily backend focused, the role also involves collaborating on full stack features where backend and frontend components intersect.

Your Impact

  • Design, implement, and maintain clean, reusable, and high‑performance backend code using C++, applying industry best practices and modern design patterns.
  • Develop scalable server‑side components and APIs, including gRPC‑based service communication.
  • Collaborate with UX/UI teams, architects, and product managers to translate functional requirements into robust technical solutions.
  • Optimize applications and services for performance, reliability, concurrency, and scalability in complex distributed environments.
  • Build and maintain automated testing infrastructure, including unit, integration, and performance tests.
  • Integrate backend services with front‑end components to support responsive, modern user experiences.
  • Participate in rigorous code reviews, debugging, profiling, and troubleshooting across the product stack.
  • Support product releases by diagnosing and resolving defects in diverse deployment and customer environments.
  • Quickly learn new technologies, frameworks, and approaches to solve evolving product challenges.
  • Lead technical design discussions and mentor junior and mid‑level developers in best‑practice C++ coding, system design, and performance optimization.
  • Contribute to platform modernization initiatives, including refactoring legacy components for modularity, scalability, and maintainability.
  • Drive adoption of engineering excellence practices such as continuous integration, static code analysis, automated quality gates, and observability improvements.
  • Partner with System Architecture on long‑term technical roadmaps, architectural evolution, cross‑product integration, and platform standardization efforts.

What You'll Need

  • Bachelor’s degree in Computer Science, Software Engineering, or a related field.
  • 8+ years of experience with Object‑Oriented Programming, primarily C++ (C experience also beneficial).
  • Strong background in system design, architecture, and design patterns.
  • Experience with SQL Server, Oracle, or similar relational databases (preferred).
  • Experience with gRPC or similar high‑performance RPC frameworks (preferred).
  • Familiarity with SAFe Agile methodologies (preferred).
  • Proficiency with debugging tools, memory and performance profilers, and optimization techniques.
  • Hands-on experience with GitHub, TFS, or similar version‑control systems.
  • Experience with unit testing frameworks and test-driven development (TDD).
  • Expertise in distributed systems, concurrency models, and multithreaded application development in C++.
  • Experience with containerization, microservices, or cloud deployment patterns (Docker, Kubernetes, etc.).
  • Familiarity with industrial automation, historian systems, data acquisition, or MES/OT environments.
  • Experience implementing secure coding practices, authentication/authorization best practices, and compliance with regulatory frameworks (e.g., least‑privilege principles, access hardening, or CRA‑related requirements).