Streaming Data Engineer
Location:
Boulder , Colorado
Posted:
February 08, 2017
Reference:
160011IF
We're looking for a software engineer interested in joining our Data Engineering
team. As part of this small team, you'll help to improve and scale our real-time
data processing and delivery pipeline. This involves finding practical solutions to
tricky distributed systems problems, diagnosing performance issues that may
only crop up at the 99th percentile, and writing real-time streaming code for
production.
We're open to a wide range of experience levels, but at minimum, we're looking
for engineers comfortable with all of the following:
• Using Linux tools and the command line
• Writing core Java (including unit test and mocks)
• Building basic APIs (e.g., JSON over HTTP)
In addition, we're interested in engineers who either have or are interested in
developing skills in the following areas:
• Distributed systems, both usage (Kafka) and design
• Stream processing
• Automation, metrics, and monitoring
The Problem
Our platform helps clients understand what's being said about them online. This
means that we ingest and analyze huge quantities of social media data. We've
developed a custom data processing pipeline and a proprietary text-analytics
engine, but to meet customer demands, we're continually evolving these
technologies. As we increase the amount of data processed and the
sophistication of our analytics services, amazing challenges lie ahead.
The Technology Stack
The Data Engineering team makes heavy use of Kafka, Spark, and core Java
(esp. the Dropwizard framework). We're also invested in Hbase, Hadoop, and
several distributed in-memory caches.
Essential Skills, Knowledge, Abilities, and Background
• BS/MS in computer science, related field, or equivalent work experience
• Proficiency in modern, core Java with interest / experience in Scala
• Interest in deployment and scaling via Kubernetes, Mesos, YARN, etc.
• Interest / experience in big-data technologies such as Kafka and Spark
• Familiarity with Linux and comfortable on the command line
Qualifications:
Design, develop, troubleshoot and debug software programs for databases, applications, tools, networks etc.

As a member of the software engineering division, you will take an active role in the definition and evolution of standard practices and procedures. You will be responsible for defining and developing software for tasks associated with the developing, designing and debugging of software applications or operating systems.

Work is non-routine and very complex, involving the application of advanced technical/business skills in area of specialization. Leading contributor individually and as a team member, providing direction and mentoring to others. BS or MS degree or equivalent experience relevant to functional area. 7 years of software engineering or related experience.

Oracle is an Equal Employment Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, sexual orientation, gender identity, disability and protected veterans status or any other characteristic protected by law.

A little about us:
Oracle is shifting the complexity from IT, moving it out of the enterprise by engineering hardware and software to work together—in the cloud.

Know someone who would be interested in this job? Share it with your network.