This job listing expired on Apr 30, 2020
Tweet

Overview

The Bethesda.net team is seeking a talented lead software engineer to contribute to the Bethesda Softworks Digital Publishing Platform. This role focuses on leading a small team of engineers developing features related to gathering, analyzing, and reacting to player data in real-time to enhance our game experiences.

This role will be responsible for architecting and building systems that will enable data driven features that interact with our games and players in real-time. For service development, you will mostly use Python or Go, and we have a strong focus on AWS Managed services to accelerate development. However, other solutions are adopted as needed (open source preferred). Our systems are running at scale 24x7, and all engineers participate in architecture discussions, live support, and our continuous improvement processes.

We are always exploring ways to improve our scale, reliability, and efficiency. Engineers are expected to learn and support new technologies, as well as propose new solutions that solve observed problems.

Responsibilities

  • Guide the technical development of complex features under the direction of a Technical Manager
  • Provide technical leadership to a small team of engineers and evaluate the technical quality of team deliverables
  • Architect and implement big data systems capable of interacting with operational systems supporting games and players in real-time
  • Manage the storage and manipulation of player and game data while always maintaining a focus on privacy and data protection
  • Write clean, maintainable code that is scalable, reliable, and observable
  • Support systems in a 24x7 environment including troubleshooting, hot fixing, and root cause analysis
  • Actively provide code review and feedback for other developers
  • Learn new technologies and programming languages as needed
  • Ensure consistency with security policy standards and security plan
  • Understand and define infrastructure as code to support systems developed
  • Collaborate with other engineers and engineering teams to delivery high quality, complex systems – this includes BI, Ops Infra, Security, QA, NOC, and Game Developers
  • Coach and mentor engineers
  • Other duties as assigned

Qualifications

  • Bachelor’s degree in Computer science or equivalent experience
  • 7 years of experience as a software engineer
  • Experience leading small engineering teams
  • Possess a strong technical background and deep knowledge of software engineering principles, exceptional problem solving, design, programming, and testing skills
  • Strong working knowledge of many systems used to store or move data (e.g. pub/sub messaging, data streaming systems, NOSQL, RDBMS, etc.)
  • Strong working knowledge of big data solutions and visualization systems
  • Working knowledge of machine learning and other decisioning making systems
  • Experience building cloud infrastructure and operating live systems
  • Experience with version control systems (Github preferred)
  • Experience supporting live systems at very high scale
  • Customer focused design of APIs and integration requirements; make integration easy
  • Experience integrating online services
  • Deep understanding of programming a variety of languages and how they operate under challenging conditions
  • Desire to learn new languages and technology
  • Pragmatic approach to providing engineering solutions that solve business needs
  • Excellent written and verbal skills

Preferred Skills

  • Golang or Scala experience
  • Knowledge of Spark
  • Knowledge of Elastic MapReduce (EMR)
  • Knowledge of Redshift
  • Knowledge of NiFi
  • Experience integrating ML tools and trained models
  • Experience working with microservices architecture
  • Experience with RPC protocols including gRPC and jRPC