Senior Software Engineer

closed
Dremio Logo

Dremio

πŸ’΅ $153k-$200k
πŸ“Remote - United States

Summary

Join Dremio and build core platform capabilities for Dremio Cloud and Dremio Software! You will develop Kubernetes-native capabilities, integrate with cloud providers, and build services for usage, billing, licensing, and entitlement systems. This role involves integrating cloud and payment platforms, solving multi-cloud and multi-regional architectural challenges, and designing solutions for complex issues. You will collaborate with seasoned engineers, taking ownership of complex challenges to deliver high-quality distributed systems at scale. The position requires expertise in distributed systems, cloud platforms, and software development. Dremio offers a comprehensive benefits package including medical, dental, vision, 401k, paid time off, and remote work options.

Requirements

  • B.S./M.S/Equivalent in Computer Science or a related technical field or equivalent experience
  • 6+ years of experience developing production-level software
  • Fluency in Java/C++
  • Strong experience with Kubernetes, especially deploying on Kubernetes
  • Strong foundation in data structures, algorithms, multi-threaded and asynchronous programming models, and their use in developing distributed and scalable systems
  • Experience building high performance software and good understanding of how modern CPU pipelined architectures work and their applications towards software development
  • Experience in developing complex and scalable distributed systems and delivering, deploying, and managing microservices successfully
  • Passion for learning and solving complex and unexplored problems effectively
  • Hands-on experience with AWS, Azure, or Google Cloud Platform

Responsibilities

  • Own design, implementation, testing, and support of next-generation features related to scalability, reliability, robustness, performance, usability and security of the product
  • Understand and reason about concurrency and parallelization to deliver scalability and performance in a multithreaded and distributed environment
  • Work on distributed systems for data processing with efficient protocols and communication, locking and consensus, schedulers, resource management, autoscaling, and self-healing
  • Use modular design patterns to deliver an architecture that’s elegant, simple, extensible and maintainable
  • Solve complex technical problems and customer issues
  • Design and deliver architectures that run optimally on public clouds like GCP, AWS, and Azure

Preferred Qualifications

  • Strong knowledge of database fundamentals, SQL, and schema design is a big plus
  • Hands on experience of multi-threaded and asynchronous programming models
  • Hands on experience in distributed systems, concurrency control, networking, storage systems, and caching techniques

Benefits

  • Medical, dental and vision insurance
  • 401(k) Plan
  • Short term / long term disability and life insurance
  • Pre-IPO stock options
  • Flexible PTO
  • 16 hours of volunteer time off
  • 12 company paid holidays
  • Remote work options
  • Paid parental leave
  • Employee Assistance Program (EAP)
This job is filled or no longer available