PS Functional/Tech Interview Questions & Answers
Core Interview Questions
1. What is your understanding of the migration role and its importance to customers?
Technical knowledge on AWS services, Dependability, able to commit to customers and follow through on commitments to earn trust, Trusted advisor to customer, Ability to push back on customer decisions when appropriate, High quality support experience, Deep understanding of the customer use case and requirements - both technical and business, Goes beyond the technical to understand the business drivers for customers, Constantly training to stay up to date with the AWS products, Hands off infrastructure but deeply consultative in approach, Solid Stakeholder management, Sense of urgency/hustle - Amazon moves fast
2. If you were meeting a customer for the first time what questions would you ask to get to know their business?
Company business strategy, Company IT strategy, Go to Market, Value proposition in their marketplace, Supporters/detractors in the organization, Cloud maturity, Appetite for change, Understand their use case for on-prem and the cloud, Current pain points, Define preferred method for engagement
3. What is the most challenging customer situation you have faced in the last 5 years? Talk me through what happened and how you handled it?
Take the steam out of the situation, Setup communication channel and provide continuous updates, Prioritize your actions, Make yourself available in multiple ways, Don't over react, don't apologize prematurely, Ensure issues are dealt with promptly, Strive for extra information from your customer, Ensure customer is satisfied with coverage, Wait until AFTER the event to begin the education process, Look to avoid repeat failures through training, reviews etc. Bonus: Look at mitigations to avoid repeat occurrence
4. Tell me about a time you took it upon yourself to learn a new technology or skill to benefit your customer?
Identified an up and coming technology, Clearly tied the learning into a customer outcome, Candidate had no prior experience in the skill/technology, Made the learning a priority by carefully de-prioritizing other tasks, Did not give up until they were expert, Used a deliverable to drive the learning, Communicated to stakeholders at their time their intention, Kept track of their progress through mentors and/or checklists
5. As a Migration Delivery, following the Customer in all the Migration phase from Strategy to Delivery - Walk me thru the typical migration process from Strategy to Delivery?
Normal approach: Define the business value (Business Case); Workshop - Assessment (Discovery); How to approach the migration, where do we put the workloads (details - technical solutions); Plan - Affinity plan & approach for applications (migration plan - build the backlog); Create documentation into a project/plan - then agreed by customer (all aligned) - Stakeholders; Build timeline - approach and methods; Then: Execution phase (advance; test; roll-startup) - test as if successful; Execution on strict timeline; Mitigation if problems (Rollback) and strategy to mitigate disasters; Once done - UAT testing as planned; Close if approved
6. Based on your experience. Can you take any example of where you helped your customer Architect a complex migration project to the cloud? What were the business success criteria for the project, projected outcomes, and metrics you were tracking.
This may be unique to each candidate.
7. What are the technical benefits of cloud computing?
Simple capacity planning / management, Scalability (The ability to scale in and out as needed), Elasticity, The ability to Automate (Infrastructure as code), High availability through redundancy, Highly reliable.
8. Follow up question: What would you say to the argument that cloud computing may not be secure or reliable?
Good answer talks to changing the perception around what the "cloud" is and how a shared security model can lead to a better security posture than being completely on-prem. It is about building trust and getting customers comfortable with encryption, key management and defense in-depth, Identity workloads that may not be suitable for the cloud for now. Nervous customers can start with Dev/Test, Scalable Web Apps, Batch Processing, and Disaster Recovery workloads and if you follow the defense in depth principle, you will be as secure if not more so than on prem. There are many mechanisms we have to ensure good security practices (IAM, key rotation, network ACLs, security groups etc).
9. Follow up question: What are some concerns with using cloud computing in a large enterprise?
Enterprises may have licencing agreements or EAs in place which make adoption of a new cloud platform difficult, different divisions of the same company may disagree on technology choices, budget cycles may take longer to get approved, enterprises may be limited by regulatory restrictions.
10. What are the business benefits of cloud computing?
Business Agility and bringing product to market more quickly, Breadth of services, Cost savings, Deploy globally within minutes, Move capex to opex.
11. If you have a relational DB that is currently suffering performance issues what measures could you take?
Good answers: Look for exhausted resource on the database, look at how queries can be optimised, consider scaling out reads using read replicas, where possible cache common queries in a caching layer for the application, scale vertically where possible by adding more hardware firepower, look at sharding options where database tables can be sharded
12. Follow Up Question: If you have a customer trying to understand the primary use cases for a relational database vs a NoSQL database how would you guide them through the process?
Good answers: A good answer will talk to relational databases being used for applications with structured data that fits nicely into tables. You should be able to define the attributes before you begin writing to the database (a schema) The way data is gathered dictates the amount of relationship to eachother. Typical examples include databases that contain user login data, inventory, etc. Also, relational databases follow the ACID principle (atomic, c, i, d). Relational databases are harder to scale horizontally. noSQL can have a dynamic schema, providing for key value stores, free-flow operations , noSQL is used for scalability and higher performance such as a game data table
13. If you have ever done any scripting or coding, please talk me through some of the good habits you developed through this.
Good answers: Takes into consideration business/user requirements, Uses a modern OOP language, Good documentation through comments, Understands the concept of modularization and/or inheritance and its benefits, Mentions the use of functions/methods in their code, Standardised naming conventions for variables, Used some sort of version control system to track changes, Used a debugger to check for errors.
Additional Questions
1. What is the most challenging customer situation you have faced in the last 5 years? Talk me through what happened and how you handled it.
(Same as question 3 above)
2. Tell me about a time you took it upon yourself to learn a new technology or skill to benefit your customer. (Note: This question touches on learn and be curious + customer obsession as we would like people to drive continuous learning upon priority management and taking a risk.)
(Same as question 4 above)
3. Have you heard of devops? What does it refer to?
An organizational attempt to improve the collaboration and communication between software developers, IT operations and QA testers. A philosophy that encompasses the processes around plan, code, build, test, deploy, operate, monitor. Underpinned by principles such as: Continuous Integration/Continuous Deployment, Relies heavily on automation in all stages of the code pipeline, In the deployment phase allows infrastructure to be treated as code (code versioning, rollback), Aligns with agile development which aims for business agility, devops aims for IT agility and enabling software deployment in an efficient/secure manner.
4. You type www.amazon.com and hit enter. In detail describe everything that happens.
Shows good understanding of DNS resolution, Internet providers in the middle, Possible content distribution, Scale of data centre infrastructure, Load balancing, Caching along the way, Scalable front end web servers, Reverse proxies used where needed to take load off web servers and speed up response times, Application servers for business logic, Database backend for user information, Possible adjunct databases such as DynamoDB/NoSQL for holding state.
5. Follow up Question: How can you be sure the page you are seeing comes from Amazon?
Rely on SSL certificate to confirm the identity of the web page provider, some SSL certs have EV which is extended validation.
6. You are interacting with a CIO who is migrating their data center. 20% of the application portfolio is not documented. The CIO asked you what he/she should be thinking about?
This may be unique to each candidate.
7. If you have a tier 1 application that needs to be refactored, where would you start the refactoring?
This may be unique to each candidate.
Small service that has a single responsible that be deployed and scaled independently (example authorization service).
9. What challenges organizations face when adopting microservices?
Breaking up existing system in small services, deployment model is different, you don't face in monolith, secure each endpoint, load balancing, logging and tracing
Refers to a one part of the routing schema - How networks is divided.
Network address translation a way to prevent the ipv4 from running out of address space you have a single public ip address and does the translation to the private network.
Components of the network or subnet. IPV4 is a 32 bit address.