Junior Software Developer
AirSage Inc., BDwidely understood. We’ve always had to contend with billions of daily records and we have evolved from custom filesystem based queuing systems and manually partitioned compute clusters to using the current state of the art Big Data workhorses. Our latest systems have been built on Kafka, Cassandra, Accumulo and Spark on Yarn. We are moving to a hybrid infrastructure model with web APIs and customer portals on the cloud while keeping the core of our compute capacity on premises. We’re looking for a motivated, capable and dynamic Junior Software Developer who wants to work side by side with seasoned professionals while learning the ins and outs of some of the most valuable technologies today. Our main two languages are Scala and Python but we have legacy systems implemented in Java and C++ stitched together by a healthy dose of bash scripting.
The Junior Software Developer is expected to follow the guidance of our senior team members while actively collaborating in the creation and maintenance of Spark on Yarn data flows performing data transformation, analytics and geospatial joins on billions of records every day as well as the web apps build for our Ops team to operate and monitor our internal and external systems. This work will require working collaboratively across other functional areas outside of Software Development: IT, Data Services, and Operations. This position reports to the Director of Research and Development.
Essential duties and responsibilities:
- Expected to participate in the estimation, planning, development, implementation, testing, documentation, deployment and maintenance of all software systems in use within AirSage.
- Expected to participate in the selection of new technologies, frameworks and software infrastructure.
- Expected to participate in collaboratively setting up and structuring new repositories as well as maintaining existing ones.
- Expected to participate in maintaining and extending existing autobuild servers.
- Expected to participate in communicating and collaborating with members of the IT, Ops and Data Services teams in order to achieve the proper design and deployment of new software systems within AirSage.
- Expected to participate helping in the setup of development servers as well and troubleshooting issues on production servers.
- At least two years of experience developing applications deployed in production using any of these languages: Python, Java or Scala
- Experience with git and understanding of multiple branching models (git flow in particular)
- Comfortable with the Linux command line and utilities; the ability to create launcher scripts will be highly valued; candidates who are familiar with RedHat based Linux distributions will be preferred.
- Good understanding of data structures; in particular those underpinning geospatial queries. Understanding of geo-hashing is highly valuable.
- High level understanding of the Hadoop ecosystem and/or distributed key-value stores.
- Experience with Spark
- Experience with PostgreSQL and PostGIS
- Experience setting up nginx as a web service/app proxy balancer and the use of uwsgi to deploy apps to it.
- Exposure to supervisord in production.
- Experience with serialization technologies, specifically ProtoBuffers.
- Exposure to AWS services in production; specifically ApiGateway, Dynamo, SNS, SQS, Lambda.
- Exposure to any of Terraform, Puppet, Chef, Ansible in production.
Other highly valued skills:
- Bachelor’s Degree in Computer Science or related field or equivalent
Qualified candidates should respond to this Job Posting by submitting their resume, including their salary history and references. Please do not apply if you are not comfortable working in a fast-paced, entrepreneurial environment. Please, No head-hunters or agencies.
Our Company is an equal opportunity organization. We recruit, employ, train, compensate, and promote without regard to race, religion, creed, color, national origin, age, gender, sexual orientation, marital status, disability, veteran status, or any other basis protected by applicable federal, state or local law.