Feb. 11, 2021
·
Someone
throughout the day will be tasking you on your design skills. They are looking for engineers that can not
only work within an existing design platform, but also understand what it takes
to build or design a new system or platform from scratch.
·
Often, software
systems need software components, something to store data, something to make
decisions (such as business logic) and APIs or processes. Reviewing software
systems design diagrams (especially SOA or distributed software systems) can be
helpful for preparation.
·
Scaling is a
critical component of software design at Microsoft. It’s important to consider
scaling when diagramming and designing your software system. Be sure and
research scalability concepts and technology prior to your interview such as
caching, load balancing, non-relational databases, microservices and
sharding.
·
Knowledge of
distributed systems, SOA, and n-tiered software architecture is very important
in answering systems design questions. If you don’t work with these concepts
regularly, be sure to review them prior to your interview.
·
Brush up on
Software design fundamentals to include object oriented design/Service Oriented
Architecture fundamentals.
·
Ask
clarifying questions, write down the requirements, draw a diagram. What are the trade-offs/advantages to your
design?
·
Put
yourself fin the customer’s shoes
No comments:
Post a Comment