Summary
The Scalable Computing Software Laboratory (SCS) at Illinois Tech is
seeking talented Software Developers to be part of a team
developing distributed storage technologies. The Software
Developers will focus on the NSF-funded project titled
ChronoLog: a new distributed shared log store for activity
and log data in collaboration with partners at the University
of Chicago. The ChronoLog team consists of faculty members,
software developers, PostDoc researchers, and several Ph.D.
students. These positions are intended to be a medium to long
term opportunity as the project is long-term and expected to
continue. Software Developers will work in the design and
development of the core ChronoLog library as well as a
collection of plugins such as a query engine, a streaming
processor, and a TensorFlow module. Applicants should have
interest in HPC, deep memory and storage hierarchies, data
streaming technologies, log workloads, data workflows, API
design and implementation, performance optimization, and code
instrumentation. The applicants must be comfortable working
with other team members and collaborating with scientists and
application developers that use HPC systems. Experience with
C++ and parallel and distributed storage systems is not
required but is highly preferred. Experience with all aspects
of the software life cycle and the agile methodology is
preferred. Selected applicants may optionally have the
opportunity to publish research papers and travel to
collaborator sites, workshops, and conferences. These
positions will follow a flexible hybrid work model between
on-campus and remote telework.
About Illinois Tech and the Scalable Computing Software Lab
Illinois Tech - home of the country’s first private-funded
research nuclear reactor and the nation’s first functional
microgrid - is known for advanced research that is moving the
needle toward significant innovation. Founded in 1890, Illinois
Institute of Technology has a 130-year legacy of excellence in
academics, research, and innovation. University-wide research
initiatives unite faculty, engineers, and students across the
disciplines to explore and discover innovation-driven solutions.
The Scalable Computing Software Lab of the Computer Science
Department has a long history of academic and research
excellence in the areas of Distributed Computing, HPC
technologies with a focus on I/O systems, memory architecture,
and storage optimizations. The SCS Lab consists of several
faculty members and dozens of researchers including visiting
faculty, PostDoc researchers, PhD and M.Sc. students. The SCS
Lab is well funded, well equipped with in-house research
computing clusters, and has produced hundreds of high-quality
publications in top venues of distributed and parallel
computing. Learn more at cs.iit.edu/~scs/.
About the Chronolog project
Today, data is being generated at a rate that even the largest
computing systems cannot handle. Further, significant developments
in hardware innovation have lowered the monetary cost of data
storage (less than $0.02 per GB), leading to a "store everything"
mindset. One common trend is the need to store activity data, also
known as log data, which describes things that happen rather than
things that are. Several domains such as Internet companies and
their web services, financial applications, scientific computing,
and the Internet-of-Things (IoT) rely heavily on processing log
data efficiently. This trend is further supported by modern
non-monolithic architectures such as microservices, containers,
and task-based computing. Today, the activity data volume,
velocity, and variety are staggering, reaching up to 7 TB/s,
demanding a rethinking of the storage stack we have today.
ChronoLog, a new distributed shared log store is designed to use
physical time to provide total ordering on a log and multiple
storage tiers, such as storage-class memories and new flash
storage, to scale the log capacity. ChronoLog is designed to offer
high performance via I/O isolation (tail and historical operations
are handled separately), elastic storage capabilities, tunable
parallel access model with highly concurrent I/O, log access via
ranged queries, and a novel 3D log distribution.
Essential job functions and key responsibilities
Minimum requirements
Knowledge, Skills, and Abilities required
Knowledge, Skills, and Abilities preferred
Position Benefits and Perks
Illinois Institute of Technology is an EEO/AA/Title VI/Title IX/Section 504/ADA/ADEA employer committed to enhancing equity, inclusion and diversity within its community. It actively seeks applications from all individuals regardless of race, color, sex, marital status, religion, creed, national origin, disability, age, military or veteran status, sexual orientation, and/or gender identity and expression. All qualified applicants will receive equal consideration for employment.