Il y a 7 joursAmazon

Software Developer Engineer - Distributed Systems

  • Seattle (King)
  • Bachelor's Degree
  • Conception / Génie civil / Génie industriel

Description de l'offre


A wave of innovation is bringing sweeping changes to networking technology. Virtualization, unimaginable scale, hardware commoditization, and automation are revolutionizing network software. At Amazon Web Services (AWS), we leverage big data technologies and deep network analytics software to run one of the largest networks in the world. We push the boundaries of robustness, fault-tolerance and smart adaptive algorithms that can react intelligently to real-world events. This is your time to make history by building large-scale distributed software systems. We develop software at every level of the stack from front-end user interfaces to low-level embedded software and everything in between. We are a highly motivated, collaborative, and a fun-loving team of software developers who thrive on solving challenging problems.

The Amazon network is composed of hundreds of thousands of heterogeneous network devices, all of which need to be managed in a consistent manner, abstract away platform-specific differences, and reduce complexity for our customers. The Network Design and Configuration Services (NDCS) team provides a consistent API for generating complex network configuration and topology descriptions. We codify the design intent of network engineers, translating that intent into a data model representing the network topology, which we then render into platform-specific device configurations. As part of configuration rendering, we source network data in real-time in order to match configuration state to the actual state of the network, enabling just-in-time deployments in one of the largest networks in the world.

Profil recherché


· A solid background in computer science: a bachelor's degree or higher in Computer Science (or equivalent)
· 2+ years of experience in building production software applications with focus on efficient back-end components is required.
· Proven software development skills, preferably in Java, C/C++, Python, Ruby and/or Perl in Linux environment.
· Familiarity with distributed systems, asynchronous messaging, and network protocols