Saturday, June 11, 2016

Software Development Engineer at Amazon

Software Development Engineer at Amazon

As a talented software engineer, you know you’re in the driver’s seat. Practically every team at Amazon is desperate for good engineers. So are Google, Facebook, and legions of startups.

How do you choose? In our experience, three things pretty much determine job happiness: the people you work with, the problems you work on, and the technologies you play with.

Who you'll work with: you'll be joining a team of experienced, high-performing, senior engineers, lead by a Principal Engineer. You can expect a culture of ambitious but achievable technology development, built in short iterations with lots of experimentation. We set high standards for ourselves but believe no work day is complete without lots of laughter. We go home at a reasonable time and return refreshed and ready the next day. You'll be learning plenty from your future teammates, and we’re eager to learn from you as well.

The problems you'll work on: you build technological abstractions that empower analysts and business owners to solve problems on their own. You will imagine data sources and design features to enable automatic predictions for multiple distinct business problems. You will be applying cutting-edge machine learning to risk evaluation, helping to find gems in terabyte-size mountains of data. You’ll be evaluating third-party sellers on the Amazon marketplace to ensure they meet Amazon’s performance standards, to ensure they conform to Amazon’s policies and codes of conduct, and to protect Amazon’s buyers from those few sellers who try to take advantage. To do it, you'll be building software systems that solve hard challenges like text classification, graph clustering, and other open ended problems.

The technologies you'll play with:


  • Applied machine learning technologies. Includes binary classification model training and execution via supervised learning technologies (Random Forest, Vowpal Wabbit, et al); regression modelling, both parametric and non-parametric; etc.

  • Natural language processing (text classification et al)

  • Graph analytics (weighted traversal, clustering, coloring, etc)

  • Wrangling “Big Data” at a place where “big” really means “big.”

  • Distributed, highly-parallelized data processing engines

  • Highly available, high-transaction rate service oriented architecture

  • Workflow systems with completion guarantee semantics

  • Java, Python, R, SAS


This is a strong team with a truly exciting charter. If you had an idea what most of those technologies are without looking it up, or you looked it up and realize it’s what you’ve always wanted to do, we should chat!
  • Bachelors in Computer Science and 7 to 10 years software development experience or equivalent

  • At least 6 years experience designing high-performance, scalable architectures

  • At least 7 years of experience with writing production quality code in Java and C++

  • Open mind and active curiosity
  • Ability to take raw product requirements and create software architectures and designs to bring them to life.

  • Experience working closely with other developers to understand their needs and issues and to develop cooperative solutions.

  • Demonstrated ability to mentor other software developers to maintain architectural vision and software quality

  • Experience working in an Agile/Scrum environment?

  • Experience defining system architectures and exploring technical feasibility tradeoffs

  • Proficiency with the tools of the trade, including a variety of modern programming languages and familiarity with emerging open-source technologies

  • Exceptional skill in technical communication with peers and non-technical cohorts

  • Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations

  • Professional experience with distributed processing such as Amazon Elastic Map Reduce, Apache Hadoop, Apache Spark, et al

  • Experience with applied machine learning, NLP, and/or graph analysis technologies.

No comments:

Post a Comment