Software Developer

Anywhere

Software Developer

Anywhere

As a programmer at Fog Creek Software, you will help design, develop, and implement the code for our award winning current products. You'll also have the opportunity to explore new product development. (We've developed one new product per year, on average, for most of the current century!)

We're happy to consider remote applicants. So, whether you're near Fog Creek headquarters in New York or happily settled in Crested Butte, CO, you may be the perfect addition to the team.

We use a wide range of technologies internally, and we don't hire based on a specific skillset. Whatever technologies, languages, or development environments you've been using, we expect you have mastered them in depth, and we expect that you will be able to master any technology, language, or development environment that we need in the future.

If you're reading this, and love to code, but maybe don't think the product developer position is for you, you might find you'd enjoy being a Support Engineer.

Requirements


  • Incredible coding skills. Your programming ability is way above average, as demonstrated by a continuous string of successful projects.
  • Excellent command of written and spoken English

Working Remotely

All of Fog Creek's technical teams are geographically distributed. Every meeting takes place online and we use the latest, easiest online tools for all of our work-related communication. That means that you can work from almost anywhere in the world, provided:

  • You have access to broadband, stable, low-latency Internet, suitable for videoconferencing
  • You have a dedicated, quiet place to work
  • Your workday overlaps New York afternoons (1700 - 2200 GMT)
  • We have a way to pay you legally wherever you live

A Commitment to Inclusion

We welcome you, as you are, to work at Fog Creek. We're removing the structural barriers and daily frustrations that too many tech companies inflict on underrepresented workers. From day one, our company has been about respecting and valuing our workers, and you’ll be supported by every level of our organization when you join our team.

Fog Creek Software, Inc. does not discriminate in employment matters on the basis of race, color, religion, gender identity or expression, national origin, age, military service eligibility, veteran status, sexual orientation, marital status, disability, or any other protected class. We support workplace diversity.

Visit our Careers section to learn more about our employment philosophy and benefits. We also encourage you to learn more about us.

How to apply

To apply, solve the problem below and include your solution as the first word in the subject line of your application email, which you can send to jobs@fogcreek.com.

Please include your current resume in HTML, Plain Text, or PDF format, and any code you used to solve the problem as an attachment. If you have a website, send us the URL. In the body of the email, explain why you would be a good fit for this job.

Application Problem

Find a 9 letter string of characters that contains only letters from

acdegilmnoprstuw

such that the hash(the_string) is

945924806726376

if hash is defined by the following pseudo-code:


Int64 hash (String s) {
    Int64 h = 7
    String letters = "acdegilmnoprstuw"
    for(Int32 i = 0; i < s.length; i++) {
        h = (h * 37 + letters.indexOf(s[i]))
    }
    return h
}

For example, if we were trying to find the 7 letter string where hash(the_string) was 680131659347, the answer would be "leepadg".