Wednesday, August 24, 2011

Optimization Algorithm Developer Position @ Gurobi is available


 Gurobi Optimization is a leading provider of software libraries for 
solving mathematical programming problems. Founded in 2008
 by three of the world's leading experts in computational optimization, 
Gurobi now provides software libraries to hundreds of commercial
 clients in a variety of industries. As a result of our rapid growth,
 we're looking to expand our development team.

Job functions

  • Develop and enhance algorithms for solving mathematical 
  • programming problems (mixed integer programming and/or
  •  linear, quadratic, and second-order cone programming).
  • Work closely with a small team of highly skilled software 
  • developers. The position will require significant collaborative
  •  work, as well as significant independent work.
  • Provide internal support, as needed, for our product support 
  • and marketing teams.
  • Present new product features and capabilities at technical 
  • conferences, and interact with product users at such events.

Qualifications

  • PhD in Operations Research, Computer Science, or similar
  •  discipline.
  • Three years experience in developing high performance
  •  software with a significant mathematical component. To be
  •  successful in this position, you must be skilled in 
  • understanding, implementing, and extending complex 
  • mathematical algorithms.

Location

  • We are flexible on work location for this position,
  •  since Gurobi is a highly distributed company with 
  • employees in various locations across the USA.

Additional requirement for submitting an application

  • To allow us to limit our attention to serious candidates only,
     we request that you implement and submit a small 
    subroutine to perform the following simple function as
     part of your application:
    • Given a sparse matrix stored in Compressed Sparse 
    • Column (CSC) format, efficiently compute the 
    • transpose of that matrix. The transpose should 
    • also be stored in CSC format. The input is
    •  provided in three arrays (beg_in[]ind_in[],
    •  and val_in[]), and the result should be returned
    •  in three arrays (beg_out[]ind_out[], and val_out[]).
    •  The matrix dimensions are given by scalars m 
    • (number of rows) and n (number of columns).
The function can be written in any language.

To apply

  • To apply for this position, please submit a resume,
  •  plus code that implements the routine described above
  •  to jobs@gurobi.com.

1 comment: