AMPL > >About Us > >Position Available 2020

Position Available

Senior Optimization Software Developer

AMPL Optimization, creators of decision modeling software used worldwide in business, research, and teaching, announces an opportunity for a dynamic and adaptable software developer who will play a major role in supporting and enhancing the AMPL optimization modeling system.

We seek candidates who combine a proven ability to develop, maintain, and support complex software, specifically in C and C++, with a strong background in the theory and practice of large-scale optimization.

This is a remote position. Applications will be accepted to work at any location worldwide.

Our product  •  Our company  •  Our position  •  Qualifications  •  To apply

Our Product

AMPL is a powerful modeling language and environment for working with large and difficult optimization problems that arise in a broad variety of applications. AMPL’s design has set the standard for optimization modeling software that deals with complex models naturally and efficiently.

AMPL’s user base extends to businesses, government agencies, and academic institutions in all parts of the world. Over a thousand scientific papers cite the use of AMPL; more than 500 universities use AMPL for teaching or research projects, and over two hundred corporate users have relied on it for their operations or planning. All of the most popular implementations of algorithms for large-scale linear and nonlinear optimization, in continuous and integer variables, offer AMPL interfaces.

New AMPL features and interfaces are regularly added. Recent enhancements include APIs for C++, C#, Java, MATLAB, Python, and R; a new direct spreadsheet interface; and connections to additional solvers. New features under development include solver callbacks and enhanced licensing for virtual machines.

Our Company

AMPL Optimization Inc. develops, markets, and supports the AMPL modeling language and system. We sell AMPL directly and through a network of strategic distribution agreements; additionally, we are a major distributor of solvers that work with AMPL. Our business has expanded steadily in all of these areas.

AMPL’s technical team combines expertise in software engineering and in large-scale optimization. Team members are highly visible and active in the optimization community, and frequently represent AMPL at professional conferences.

We are a distributed organization with individuals working from their homes in different cities, with occasional meetings arranged as plans and circumstances permit.

Our Position

We seek a dynamic and adaptable software developer who can meet the challenges of supporting and enhancing the AMPL optimization modeling system. You will work directly with the entire technical team, including the founders of AMPL.

Your specific responsibilities will be related to maintaining and extending the AMPL system, including the AMPL language translator and its interfaces to solvers, data sources, and users. You may also be called upon to support AMPL users in a variety of application areas. Additionally, you will have the opportunity to help set AMPL’s development and marketing strategy.


Applicants should have a strong background and interest in mathematical optimization, as evidenced by qualifications such as the following:

  • Study of optimization at an advanced level
  • Experience carrying out research in optimization or
    building applications of optimization to challenging problems
  • Experience using optimization modeling systems and solvers

Applicants should also have sufficient preparation and experience to undertake the expected maintenance and development of the AMPL system, for which the following qualifications will be relevant:

  • A solid foundation in computer science, with strong competencies in
    data structures, algorithms, and software design
  • High proficiency in C programming, particularly as expressed in C++
  • Familiarity with software design and development in C for Windows, Linux, and macOS
  • Experience developing compilers and/or interpreters

The following nontechnical qualities are also essential to this position:

  • Ability to communicate effectively, both electronically and in person, with members of development team
  • Ability to formulate goals and to make plans for meeting them
  • Ability to work independently

Applicants must confirm that, at the time that employment in this position begins, they will be legally entitled to accept permanent, full-time employment in their current country of residence.

To Apply

Please send a cover letter and resume with “AMPL Developer Position 2020” in the subject line to