Principal Software Engineer - OpenEdge Core Language

Software EngineeringHybrid Remote, Burlington, Massachusetts


We are Progress (Nasdaq: PRGS) – the trusted provider of software that enables our customers to develop, deploy, and manage responsible, AI-powered applications and experiences with agility and ease.
 
We’re proud to have a diverse, global team where we value the individual and enrich our culture by considering varied perspectives, because we believe people power progress. We are looking for a Principal Software Engineer to join our OpenEdge Core Language Development team, working at the heart of a mission-critical enterprise platform used by customers around the world. This is a hybrid role, splitting time between your home office and our Burlington, MA headquarters.  Candidates must be local to that location to be considered as we can not provide a relocation package at this time.
 
As a Principal Software Engineer on the OpenEdge Core Language team, you will work on the foundation of the OpenEdge platform, including the ABL language runtime, virtual machine (AVM), client technologies, and core execution services.
 
This is a hands-on, highly technical individual contributor role for engineers who enjoy working deep in the system stack—building language runtimes, performance-critical components, and long-lived platform infrastructure. OpenEdge powers business-critical applications across industries. The software you build must be reliable, secure, performant, and backward-compatible, while continuing to evolve to meet modern architecture, cloud, and AI-driven requirements.

In this role, you will: 
  • Design, implement, and maintain core components of the OpenEdge ABL language runtime and AVM.
  • Develop and evolve client-side runtime and protocol layers that integrate with the database and application server.
  • Build and optimize performance-critical, multi-threaded systems in C/C++.
  • Work on core language features, execution semantics, and runtime services while preserving long-term compatibility.
  • Diagnose and resolve complex customer issues in core language and runtime components, delivering durable fixes and platform improvements.
  • Contribute to platform security, including secure coding practices and hardening of core components.
  • Own technical design and implementation across the full development lifecycle, including testing, documentation, and maintenance.
  • Serve as a technical leader and mentor, providing code reviews, design guidance, and pairing with senior engineers.
  • Collaborate with cross-functional teams (database, application server, tooling, architecture, security) to ensure cohesive platform evolution.
  • Communicate technical concepts clearly and influence technical direction through thoughtful design and collaboration.

Your background: 

  • 10+ years of professional software development experience.
  • Strong expertise with C/C++ developing multi-threaded software and experience with shared memory.
  • Deep understanding of data structures, algorithms, and performance optimization.
  • Experience building or maintaining systems-level software.
  • Proven experience with multi-threaded programming, synchronization, and concurrency.
  • Solid understanding of operating system fundamentals, including memory management, process and thread lifecycle, file systems and I/O, and Inter-process communication.
  • Familiarity with secure software development practices.
  • Comfortable developing on Linux/Unix and Windows platforms.
  • Strong problem-solving skills and ability to work independently.
  • Excellent written and verbal communication skills in English.
  • Ability to work independently and meets tight deadlines.
  • Bachelor's degree in computer science or equivalent experience.

Additionally, it would be beneficial if you have: 

  • Experience with programming language design or evolution
  • Background in database or application server platforms
  • Experience supporting backward compatibility across multiple long-term releases
  • Familiarity with protocol design, serialization, or interoperability layers
  • Knowledge of static analysis, build systems, or security scanning tools
  • Unix shell scripting or platform automation experience
 
Base Salary Range: $136,000 - $168,000
This position is also eligible to participate in our performance-based annual corporate bonus plan. Final base compensation is determined by a number of factors, including but not limited to job-related skills, education, demonstrable experience, and allowance for future and continued salary growth. We also offer a robust benefits package, with details below.
 

If this sounds like you and fits your experience and career goals, we’d be happy to chat.   

What we offer in return is the opportunity to experience a great company culture with wonderful colleagues to learn from and collaborate with and also to enjoy:  

  • Medical, dental, vision, life & disability, and financial benefits (including 401(k) retirement savings plan. Tuition Reimbursement program. Additional voluntary benefits including crucial illness/hospital indemnity, identity theft protection, auto & home insurance, legal, and pet insurance. 
  • Competitive salary, bonus, and best-in-class Employee Stock Purchase Program (ESPP) with a 27-month lookback
  • Flexible paid vacation time, paid day off for your birthday, and company holidays. A variety of leave plans, including Parental Leave.
  • Employee Assistance Program (EAP) and an employee well-being program focusing on physical, mental, and financial health. 
 
Apply Now!
 
#LI-hybrid

 

 

Together, We Make Progress

Progress is an inclusive workplace where opportunities to succeed are available to everyone. As a multicultural company serving a global community, we encourage a wide range of points of view and celebrate our diverse backgrounds. Our unique combination of perspectives inspires innovation, connects us to our customers and positively affects our communities. It is only by working together and learning from each other that we make Progress. Join us!