Data Science Software Engineer
What We Do
Uptake helps industrial companies digitally transform with open, purpose-built software that delivers outcomes that matter. Built on a foundation of data science and machine learning, our vision is to create a world that always works — one where the machines and equipment we depend on daily don’t break, and industrial companies are once again the creators of economic growth and opportunity.
Why Work Here
Uptake is a values-driven organization, and we are excited about what we do. We’re flexible, honest, hardworking, and collaborative. As a team, we bring our diverse backgrounds, beliefs, and experiences together to solve tough, important problems. We support and challenge one another to bring out the best in each of us, and we might have a little fun along the way. We’re also proud to be one of Chicago’s best places to work in 2018 according to Forbes and Great Place to Work Institute!
We offer generous benefits including health, dental, vision, parental leave, 401K match, and unlimited vacation. We are lifelong learners, and our Uptake University program offers training and professional development on a wide variety of topics. We also have employee-led community groups including [email protected], [email protected], [email protected], [email protected], and many more. Learn more at https://www.uptake.com/careers.
What Data Science Software Engineers Do Here
Data science is at the core of what we do at Uptake. The Data Science Software Engineer is part of the Data Science team working to integrate data sources that will improve our Machine Learning and AI tools and enhance the customer experience.
*This position is open to all levels*
Typical day to day tasks for a Data Science Software Engineer might include:
- Collaborate with Data Science, Product, and Engineering stakeholders to define and implement data powered products, and deploy and maintain them in production
- Seeking out ways to automate and accelerate development of data driven products
- Build a highly scalable framework for ingesting, transforming and enhancing terabytes of daily data to support modeling and reporting needs
- Exemplify software engineering best practices and proactively identify technical debt and other issues to harden our products
- Run large-sized projects and create solutions for the immediate team
What We Are Looking For
- Bachelor’s degree in computer science, information technology/information systems, or a field related to a computational science
- 2+ years of applied professional software engineering experience
- Applied experience with NoSQL databases (e.g. Cassandra)
- Applied experience with RDBMS systems for OLTP workloads, such as Postgres or MySQL
- Applied experience using Scala, Kotlin, Java, or similar JVM based languages
- Applied experience with, or knowledge of, REST APIs and making data available through microservices
- Applied experience using big data technologies, such as Spark, HDFS, Kafka, and S3
- Knowledge of machine learning and data science processes
- Excellent communication skills, including a knack for clear documentation
- Ability to work quickly and collaboratively in a fast-paced, entrepreneurial environment
- Candidates must be authorized to work in the US
Nice to Have
- MS or PhD in Computer Science or other technical field
- Familiarity with column stores (e.g. parquet) and big data warehousing
- Familiarity with dynamic languages, such as Python or R
- Above average understanding and practical use of:
- Akka, stream processing technologies and concurrency frameworks
- Avro, protocol buffers, or Thrift
- Experience working in one of the following industry areas:
- Industrial technology
Uptake welcomes and encourages applications from all individuals, without regard to any prohibited ground of discrimination, including from people with disabilities. Accommodations are available on request for candidates taking part in all aspects of the selection process.