Skip to content

Instantly share code, notes, and snippets.

@fj
Last active August 29, 2015 14:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fj/9ca8a9be1de3b07b3604 to your computer and use it in GitHub Desktop.
Save fj/9ca8a9be1de3b07b3604 to your computer and use it in GitHub Desktop.

About us

UpHex (http://uphex.com) is a tiny, nascent SaaS company that helps marketing agencies monitor analytics for their clients.

We're completely bootstrapped with a current runway of about 18 months, though we plan to seek seed funding at some point. In August 2014 we also won a $50,000 grant from the state of Virginia's Commonwealth Research and Commercialization Fund. We don't yet charge our users anything during this trial phase, but we'd like to do so (very) soon.

We're currently in the middle of a pilot with about a dozen brave customers. In total, they're sending us about 265,000 data points per day across a number of connected Twitter, Facebook, and Google Analytics accounts. At the moment, we can effectively use only a fraction of that data.

That's where you come in.

About the role

We're looking for a data analyst/scientist to help us build this platform. We're looking for someone who has a passion for software development, loves making things work well, and who thrives in a high-impact, low-ceremony startup environment.

In general, you would be responsible for:

  • optimizing the parameters of our detection models so that they accurately detect anomalous events
  • measuring and benchmarking the accuracy of our detection models, so as to tell when an improvement is actually an improvement
  • writing Ruby code that represents mathematical constructs and models our Ruby application requires

This is a contract position; the initial project is to update our current anomaly-detection algorithm . We'd expect you to work about 2 or 3 days per week so that we have some time overlap, but we otherwise care much more about the results you deliver than the hours you spend.

Our technology

We generally place a high premium on architectural and code simplicity, and try to minimize complexity at all levels.

We run a Padrino stack on Cloud66 and DigitalOcean. ActiveRecord 4 is used for the small number of models that interact with the database directly. The datastore is Postgresql 9.3; we also use Redis to store jobs for Resque.

The architecture is likewise fairly simple: there's one load balancer, two web servers, one process server, and one Postgresql database. Our codebase is small right now, clocking in at around 1,000 lines including all models, controllers, and services.

You can run all the tests (RSpec and Rubocop) with a single command, and you can deploy to production or any other environment with a single command.

About you

You:

  • are comfortable working with a remote team
  • are comfortable using tools like Google Hangout and Flowdock to collaborate with teammates
  • have a GitHub, Twitter, or StackOverflow account
  • enjoy one of XKCD, SMBC, Model View Culture, or PBF
  • are a fan of DRY, STTCPW, and YAGNI

Your technical experience includes most or all of the following:

  • you understand techniques around modeling, prediction, and simple anomaly detection (e.g. Holt-Winters exponential moving averages, univariate HMMs, Kalman filters, etc.) and, much more importantly, are capable of discussing and articulating the strengths and weaknesses of each
  • proficiency with a language geared towards numerical, mathematical, or scientific analysis (e.g. R, MATLAB/Octave, Sage, Maple, etc.)
  • expert proficiency with a general-purpose programming or systems language (e.g. Ruby, Python, Go, etc.)
  • have written production code in Ruby

Bonus points if:

  • you've used D3.js and can generate helpful visualizations of your data with it
  • you can point to public commits you've made on a project you like
  • you have written an interesting technical blog post, essay, rant, etc. that you can link to
  • you have worked at a startup before
  • you understand and use topic/feature branches in Git

How to apply

If you think you'd be a good fit, we'd love to hear from you! To apply, send an e-mail to tech-team@uphex.com that includes the following info:

  • the URLs for two companies or projects that you've previously worked on, along with a short description of what you did there and when
  • the URL of the most interesting thing you've read, listened to, or watched lately, along with a short description of why it's interesting to you
  • the URL of a commit that you made to a public project, or a commit that you think is particularly interesting

Please also include at least two of:

  • your GitHub or Bitbucket account URL
  • your StackOverflow user profile URL
  • your LinkedIn profile URL
  • your Twitter handle or any public web presence (blog, portfolio site, Kaggle profile, et cetera)

Please don't send a resume. We're not hiring a PDF -- we're hiring you!

We promise to be in touch within one business day. If you have any questions, we invite you to talk directly to John Feminella, our CTO. His e-mail is <his first name>@uphex.com (but use tech-team@uphex.com once you're ready to apply).

We look forward to hearing from you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment