Software Engineer

Remote from the US  ‐ Remote
This project has been archived and is not accepting more applications.
Browse open projects on our job board.

Description

Azavea uses geo-data to build civic software for the web. We're excited about what we do, we're growing, and we hope you will join us.

Azavea is based in Philadelphia, and we are looking to grow our GeoTrellis team, which develops an open source software framework, GeoTrellis (http://geotrellis.io/), a low latency geospatial data processing framework based on Scala and Spark.

You are ...
... a software engineer who enjoys being constantly challenged to solve tough problems using the best tools available. You want to write open source software in an open source environment. You challenge the status quo of software development by keeping up to speed with cutting edge techniques and technologies. You understand or are eager to learn how functional programming is a great way to write beautiful code.

Who We Are and What We're Doing
As a B Corporation (http://www.bcorporation.net/azavea), we're committed to working on projects that have social and civic impact and advancing the state-of-the-art through research. Most of our customers are local governments, non-profit organizations and academic or federal research projects. We build custom apps; perform geospatial analysis; manage several open source civic software projects (DistrictBuilder (http://www.azavea.com/districtbuilder/), OpenTreeMap (http://www.azavea.com/opentreemap/) and others (http://github.com/azavea/) ); and develop an open source, high performance computing framework, GeoTrellis (https://github.com/azavea/geotrellis), that enables us to build fast analytical applications by distributing the geospatial data processing. Our developers work across the technology stack from database and application servers to modern, browser-based front-ends.

The GeoTrellis (https://github.com/azavea/geotrellis) team develops an open source software development framework that supports low latency, distributed processing of raster geospatial data. The software is based on Scala, Spark (http://spark.incubator.apache.org/), HDFS and Accumulo, and it is used in many types of web applications, including public transit travel-sheds (http://transit.geotrellis.com/), economic development and business siting (http://gis.ashevillenc.gov/mapasheville/priorityplaces/), watershed modeling, processing satellite imagery and digital humanities research (http://dsl.richmond.edu/emancipation/). We are about to release version 0.10, have recently submitted to the Eclipse Foundation's LocationTech working group (http://www.locationtech.org/), have completed the integration of Spark, and we have many more plans for extending the framework over the next few years.

GeoTrellis is growing, and we need your help to expand the framework and make it more useful to other developers.

Skills & Requirements

What You'll Do
  • Implement new features, algorithms, data processing operations, benchmarks and tests for a large Scala-based software framework.
  • Build scalable back-end software where performance is critical.
  • Engage in multidisciplinary work that applies an agile process (scrum board, daily stand-ups and two-week iterations) to design, architecture, development, testing and deployment.
  • Support the development of an open source community around the GeoTrellis project.
  • Contribute to both a growing company and to the open source communities that support our work.


  • You should

    - Be excited about code, be interested in reading about code, and go to conferences about code.
    - Want to constantly learn in order to help a bleeding edge open source project stay on that edge.
    - Demonstrate fluency with at least one functional programming language such as Scala, Clojure or Haskell.
    - Interested in working with a small, collaborative team on meaningful projects.
    - Get excited about contributing to a large, complex open source project.

    You get extra points for

  • Experience with Spark, Akka, or other Scala-based distributed processing frameworks.
  • Having worked with distributed data processing frameworks, like Hadoop, Amazon MR, etc.
  • Demonstrating your open source or other community service contributions.
  • Strong background in algorithm development where performance is critical.


  • You'll notice that we don't say "X-Y years of experience" or "M.S. in Computer Science." Formal credentials like these are not irrelevant, but for this position, we are primarily looking for people with a strong interest in algorithms, functional programming and distributed computing. You might have had these kinds of experiences without a college degree. Or you may be just out of school but worked your way through school and had some great co-op experiences. Or you might have a math or humanities background but a have a great head for software engineering. These are all potentially great backgrounds, and we'd be interested in hearing from you.

    Office and Benefits
    This position is available on-site at our Philadelphia office or through a remote work arrangement.

    Our Philadelphia office is located in a brightly lit office on the 4th floor of a converted factory building in the Callowhill neighborhood, a short walk from Center City, the Reading Terminal Market and SEPTA subway and regional rail stations. For bicyclists, we have in-house bike parking, a shower and lockers. It's an open office plan with several smaller rooms for team meetings, private space and concentration time. You get a top-end Linux workstation, Mac or Windows laptop with a pile of memory for VMs and extra monitors. We have flex-time to deal with personal stuff, and most people work a 40 - 45 hour week on a regular schedule. After the first six months, our developers can also spend up to 10% of their time on a geospatial open source, professional development, or R&D project. For example, some of our colleagues are contributors to the PostGIS (http://postgis.refractions.net/), OpenLayers (http://openlayers.org/), GDAL (http://www.gdal.org/) and GeoTrellis (https://geotrellis.io/) projects. Other research projects have included improving dev ops tool chains; using FFT (http://en.wikipedia.org/wiki/Fast_Fourier_transform) for fast kernel density estimation (http://en.wikipedia.org/wiki/Kernel_density); working with Spark to develop machine learning tools; and hijacking GPUs for raster data processing. Once a quarter, we all get together to share our research and learning with our colleagues.

    We offer a salary commensurate with skills and experience and a benefits package (http://www.azavea.com/about-us/join-us/benefits/) that includes:

  • Fully subsidized health care, dental, prescription plan, including for spouse/partner and children
  • Medical reimbursement plan to cover what the health insurance does not
  • Retirement plan with matching percentage
  • Almost 4 weeks paid vacation plus sick/personal time off
  • Family and medical leave
  • Flexible work schedule
  • Paid maternity and paternity leave
  • Paid time off for voting and volunteering
  • Education assistance plan
  • Student loan assistance
  • Public transit and biking reimbursement plans
  • Monthly lunches on the house
  • 10% time for Research or Training Projects
  • Profit-sharing bonus plan
  • Financial transparency through an open book policy
  • Supremely awesome colleagues


  • We welcome qualified candidates from all walks of life and value diversity in our company, and we prohibit discrimination based on race, color, religion, ancestry, national origin, sex, sexual orientation, gender identity, age, veteran status, military service, disability unrelated to job requirements, marital status, or domestic partner status.
    Start date
    ASAP
    From
    Azavea
    Published at
    18.01.2016
    Contact person:
    Freelancer Map
    Project ID:
    1053267
    Contract type
    Freelance
    Workplace
    100 % remote
    To apply to this project you must log in.
    Register