INTERVIEW PREP
System
Development
Engineer
WHAT DOES A SYSDE DO AT AMAZON?
SysDEs build software to increase operational performance and
developer agility. They are DevOps thought leaders in
automation and infrastructure of a product or service. Working
with customers to understand business impacts, SysDEs identify
problems that could arise from technical decisions. They’re
proficient in a broad range of technologies (hardware, software,
networking, operating systems) and how these interact with one
another in complex systems. Writing code to fix bugs, automating
tasks, implementing monitoring, and dealing with infrastructural
components within the large scale systems they build, there is no
ordinary day for SysDEs.
Want to become an Amazon System Development Engineer?
Let’s walk through some helpful tips for the interview process.
How to prepare for a SysDE Interview:
1. Highlight your knowledge of software 4. Write syntactically correct code— no
or infrastructure system design. Be able pseudo code. Ensure it’s scalable robust,
to design a system at a high level and be and well-tested.
able to speak to performance tradeoffs
and operational characteristics. This
includes deployment methodologies and 5. Use logical and maintainable code to
automation. build performant systems.
2. Research scalability concepts and tech- 6. Be familiar with a range of system
nology (e.g caching, load balancing, components including OS fundamentals
non-relational databases and (e.g. scheduling, memory management,
networking). file systems), networking protocols and
storage technologies.
3. Be familiar with prominent languages,
including the syntax of the language.
Ultimately, pick the one you're most
comfortable with and stick with it.
Technical tips
Be familiar and ready to solve in-depth technical questions on concepts like auto-
mation, scripting and scalable deployments methodologies (i.e Chef or Puppet).
This will likely include qualifying requirements, checking edge cases and white
boarding your solutions with our engineers. In-person interviews tend to be more
in-depth than the types of questions asked during your phone interview.
Be prepared to discuss technologies listed on your resume. Examples may include
your practical use of Python or storage technologies as technical competencies to
solve technical problems. It is helpful to review the job description before your
interview to align your qualifications against the job’s specific requirements and
responsibilities.
Visit highscalability.com or similar websites to brush up on scalable system tech-
nologies and building practical software-focused solutions. “System Design Inter-
view – An insider’s guide” is a recommended read.
White boarding
Write a list of requirements on the Scaling is a critical component of
board, and keep asking questions. This software distributed design. Consider
should be the first thing you write out. software components, how to store
data, APIs, component relationships,
Be prepared to white board. Practice and data flows. Keep this in mind
writing code and system design out by when diagramming and designing your
hand. Consider a scalable code or software systems.
design before you begin drafting.
Infrastructure plays a key role in the
Keep the customer front of mind. Who performance of software. Understand
is the customer, and what problem are your technology choices, and how it
you solving for them? may influence your design.
Dig for clarification. Your interviewer Operational performance of your
will not try to trick you. Questions may design is important. How will you
be intentionally vague to push your ensure this system is working at an
innovation. acceptable level of performance? If a
problem occurs, what will be involved
Begin drawing a diagram once you've to trouble shoot and resolve quickly?
done enough digging to begin white What are the possible points of failure
boarding your system design solution. and how can they be made more
Start with shapes to represent robust against failure?
different software components and
data sources, and then arrows Interact with your interviewer. You will
connecting them to show web services, be asked several questions related to
APIs and interactions between design. Engage with your interviewer
components. with necessary questions to complete
the exercise.
Know how your solution solves the
problem. If you suggest technology to
help solve, understand how that
technology works.
LEARN MORE
Dive into our Leadership Principles
Help make history
Interviewing for a tech role? Explore our common technical topics
starting with Day 1
Explore Interviewing at Amazon for FAQs, prep guides and more
QUESTIONS? R EA CH OUT TO YOUR RECR UITI NG POI NT OF CO NTACT
AMAZON IS AN EQUAL OPPORTUNITY EMPLOYER