AWS TAM Interview
What is DAS (Direct Attached Storage)?
Storage that is physically connected to the host computer. Good for local, small scale storage
Describe a situation where you had to work with incomplete data or information
Phillips outage, Mark called and asked me if we should revert to paper permits
What is DNS and how does it work?
Domain Name Servers (DNS) are the Internet's equivalent of a phone book. They maintain a directory of domain names and translate them to Internet Protocol (IP) addresses.
What is your salary expectations?
130 - 150
What are the types of HTTP responses?
200 successful 400 bad request 401 unauthorized 403 forbidden 404 Not found 503 Server unavailable
What is a CDN?
A Content Delivery Network is a global cache that stores copies of data on edge caches. AWS CloudFront is the amazon CDN
What is a container? And concepts around it?
A container is a software package that contains all the code / libraries necessary to run the code in any environment. Makes it easier to scale, useful for microservices so the application isn't monolithic, and easier to deploy on many different machines
What are data lakes and data pools and when should you use them?
A data lake is a collection of raw data where the use may not have been defined yet. A data pool is filtered data that can be accessed by multiple independent parties such as suppliers, retailers, and distributors.
What is a data warehouse and when would you use it?
A data warehouse is a data storage system used primarily for reporting / data analysis. It is a collection of multiple data sources that may or may not have been transformed prior to loading.
What is Linux Kernel? What's it for and how is it used in boot sequence?
A kernel is used to communicate between hardware and software. It is part of the operating system. The linux kernel is an open source monolithic kernel used to run many different operating systems including android. Because it is open source, it's easily modifiable so unnecessary drivers and functionality can be removed / altered.
How have you handled a difficult customer?
A lot of patience and careful thinking / phrasing. Blake
What is bootstrapping?
A method of installing an application, dependency or customizations when an EC2 instance is launched
Tell me how a packet is routed through the internet
A router selects a path and a packet follows that path through the network until it reaches it's destination.
How does table scan impact database performance
A table scan looks at every record in a table, if the objective of a query is to effect the majority of the data, then a table scan likely does not have a big detrimental impact. However when small portions of the data set are being selected or updated, a table scan will slow the query process greatly for large data sets
What is DNS cache and how does it work?
A temporary storage of domains and their IP addresses so the client doesn't need to do a full DNS lookup to find the IP address. The time to live (TTL) defines how long the record is cached for
Tell me about a time when the organization you were working for adopted one of your ideas
Agile proposal
Explain the differences between ALB and NLB
Application load balancer receives layer 7 traffic (HTTP/S) and supports routing to different target groups. Network load balancer receives layer 4 traffic (TCP,UDP,TLS), can handle millions of requests per second with lower latency which is better for streaming services. ALB can offload SSL while NLB cannot.
Describe the packet content of a web browser request to access a site
An access request payload contains a username and hashed password
How would you apply a microservice to a real-life example?
Apartment buildings, scale up vs out
Tell me about a time when something failed or did not go as planned
Apple security update, barscode scanning, deprecated library
Tell me about a time you innovated a process
EAM issue with ONEOK's isolation points
What are the ACID database properties?
Atomicity - All or nothing transaction; everything has to complete successfully Consistency - Guarantees data consistency (following constraints, operations are accurate, ect.) Isolation - Ensures that concurrent operations leave the database in the same state if executed sequentially Durability - Committed changes are retained in the event of a system failure
Bare servers vs virtual machines vs docker. When to use which one?
Bare metal has consistent performance and complete data privacy, virtual machines are scalable, can run multiple applications, and have all the resources of an entire operating system, containers are scalable, packaged application code are great for development.
Tell me about a time when you made a mistake at work
Bayway, invista prod go live orange, running script on staging
Tell me about a time when you failed
Bayway, running script on staging that updated 1400 rows, Invista go live week in orange where prod wasn't ready
Tell me about a time you failed at work. What did you learn from it?
Bayway, staging db, Invista orange go live
How did you manage a situation where you had to object to your executive/customer?
Blake asking for new functionality 2 weeks before a scheduled release date. Gave him the option of removing items that hadn't been developed, not including the new items, or moving the release date back
Tell me about a time when you had to tell a customer no
Blake wanted to add requests into a current release cycle scheduled for 2 weeks out
What are the roles of the typical customers you interact with?
Business analysts, project managers, team leaders, executives, developers, and end users. I interact with all of them differently and rarely at the same time.
Tell me about a time you took on work outside your responsibility
Project management of MPC, script writing, creating user story templates, trainings / consulting
Which of the leadership principles do you like the most?
Customer obsession, learn and be curious, have backbone; disagree and commit
Tell me about a time when you had to take a calculated risk at work
Changing the config of the software mid training for INVISTA
Explain a situation where you had a disagreement with your manager and how you resolved it?
Chase / Justin, P66
How would you troubleshoot a website with bad performance?
Check my devices internet speed, determine if certain requests are fast while others are slow, what's the difference? Find where in the architecture the system fails
What is CIDR?
Classless inter-domain routing (CIDR) is a method for allocating IP addresses that allows each network to be allocated a power of 2 sized network
Explain the SSL handshake
Client sends a hello with list of supported ciphers, server responds with public key and selected cipher, the client sends the string for synchronous encryption via asynchronous encryption, both create the same key and can now safely share messages
What is cloudfront? How do you set it up?
CloudFront is amazon's content delivery network that is used to set up geographically distributed resources to decrease latency. CloudFront should be the service connected to instead of the S3 bucket or whatever other service.
What is DB caching?
Commonly retrieved data is stored in cache to decrease the time to retrieve that data from a database. An application would check the cache to see if the required data is there before going to the database.
What are some of the draw backs of implementing sharding?
Complex, hot spots, reduced data integrity, slower when joining data between shards
What is CI/CD and what are all the steps in it?
Continuous Integration -> Continuous Delivery -> Continuous Deployment. The steps are build, test, merge, release to repo, deploy to dev, staging, prod
What is the most innovative idea you've ever had?
Convert spreadsheets of people and their assigned roles into a sql script via python
Tell me about the toughest decision you've had to make in the last 6 months
Current position is not challenging, while at Prometheus transitioning Invista to Easton
What are the different types of storage?
DAS, NAS, SAN, RAM
How would you protect yourself against DNS poisoning or other DNS attacks?
DNS poisoning is when traffic is rerouted to an incorrect IP address because the cached record was updated. To protect against this sort of attack, you can implement DNSSEC which requires authentication. For DNS cache poisoning, you can reduce the TTL.
What is database sharding?
Database Sharding is horizontal scaling method for databases. In relational databases, the quantity of tables and columns remains the same on each new server but the records within the tables are split up over multiple servers. This can be extremely effective with high IOPS rates and geographically distant users
What is a deduplication?
Deduplication is a method of comparing unique factors of data against each other to identify and remove duplicates
Tell me about a conflict you experienced at work and how you handled it
Didn't know how to write SQL scripts / unreliable, knew how to configure through the UI. Disagreed with Gray on the path forward, he was right.
Explain tiered storage
Different file storage practices based on access requirements. Tier 0 has the fastest rate of access by using RAM, whereas tier 5 has a slower rate of access but is significantly cheaper. Higher tiered storage techniques are effective ways to store data that needs to be retained but not accessed frequently.
What is a DDOS attack and how would you defend against it?
Distributed denial of service attack is a network attack where a ton of malicious traffic is sent and causing issues. Limit access points, utilize auto-scaling functionality, use firewalls. AWS Shield has machine learning to identify malicious traffic.
What are technologies that allow / run containers? Not necessarily in AWS
Docker is used to create containers via docker files then docker images. Kubernetes (K8's) is used as a container orchestration tool to manage all the various containers and scale them up / out
How is an IP resolved to a domain name?
Either with ping or tracert to get the ip address, use nslookup to get the domain name
Explain a 3 tier architecture
Presentation Tier, Logic Tier, Data Tier. Presentation is what the client sees, logic is where the data processing occurs, data is where application data is stored.
Tell me about a time you worked on a tight deadline
Phillips was conducting a training one week and none of the users had the proper roles in the staging system where they trained out of so I wrote a script to programmatically give them every permission in the system shy of administrator temporarily so trainings can progress
Tell me about a time you had to deal with an angry customer
Phillips: Blake, Phillips: Ben, Invista: Roger
How would you design a data center?
Pick geographic high points not susceptible to natural disasters. Design the building with scaling up in mind. Access to a water supply nearby. Renewable energy options. Everything designed / wired in parallel so a single outage won't impact other servers. Physical security measures. Then do the same thing for at least one other physically different location for redundancy. Northern locations tend to be cooler so cheaper energy requirements. Use artificial intelligence to manage the power services.
What is NAS (Network Attached Storage)?
Storage that is connected to via network. Great for file storage for larger companies that need multiple user access to files and simple scalability. Single point of failure.
If you had a request passing through a load balancer connected to two app servers, a web server and a db server, and the whole architecture becomes unresponsive, how would you start troubleshooting this?
Look at the logs of the load balancer to view the request.
Tell me about a time when you took a risk that benefited your employer
MPC or Invista configuration change mid way through training
Tell me about a time you dealt with ambiguity?
Process discoveries, they provide a stack of different permit types and say figure it out
What are the types of HTTP requests?
Get, post, put, patch, and delete
Tell me about a time you went above and beyond to help a customer
Glencore, told we couldn't put any development resources towards them and I wasn't allowed to spend my time working on their implementation outside of the biweekly (twice a week) meetings. I worked after hours to implement as many change requests as I could via scripting in the database and clever configuration tactics
How have I accomplished my goals and did it follow the amazon leadership principles?
Goals are completed in procedural and planned ways. Joining PG, my skillset in the software industry was very lacking. Learned project management, learned sql, learned html, css, js, learned python. Set a goal, and took an opportunity when I had it to learn and apply that knowledge
How does HTTP get secured?
HTTP requests are secured using encryption methods. Historically SSL was used, now TLS is more common but still referred to as SSL. Asynchronous encryption is done using public / private key pairs on both the client and server side. Then synchronous encryption is completed by the browser and server agreeing on a session key generated by the browser.
What is Hadoop?
Hadoop is a tool that assists with big data issues. It is comprised of a distributed file system, a data processing technique called MapReduce, and yarn which manages the resources.
What is SAN (Storage Area Network)?
High performance storage system to transfer data for enterprises, data centers, or virtual computing environments. Great for storing and transferring large data blocks very fast. Typically very expensive but also secure.
What are the types of virtualization?
Operating systems (VMs), load balancing, network, storage
How can you increase DB performance and make it more scalable?
Optimize queries, create and optimize indexes, increase memory, increase cpu, reduce IOPS if possible, read replicas, sharding, caching common reads, create views
Moving files from location A to location B and they are multi terrabyte, you have high bandwidth and high latency. How would you move these files?
Parallel process move files.
What have I personally contributed to solving a hard problem? (Be detailed)
I primarily worked on two major products while at Prometheus Group, the first was an electronic permitting application for manufacturing, processing, and production industries. The second was a more modern and advanced version of the first product. One of the key features of the permitting applications was the ability to template permits for common tasks and easily create new permits based on those templates. Customers who were migrating from the deprecated solution to the new one had hundreds or even thousands of man hours depending on the size of the company in these permit templates. So our goal became to migrate these templates to the new solution. However the majority of the development team had only worked on the new application and was not familiar with the complex database schema for the old one. As I was learning python and confident in my SQL skills, I learned how the fields and field types were stored in the new database, then wrote a python script that pulled the template data from the old database and output a sql script that would insert all of the old templates into the new application thus retaining the value of the many man-hours our customers had spent creating those templates
Tell me about yourself
I studied mechanical engineering in college because I love to learn and apply knowledge to solve problems. I quickly found that in most of the industries I was qualified to join, my learning would plateau quickly and the job would become repetitive so I looked into other career paths. First I started with academic research but I wasn't prepared to pursue a PhD so I pivoted into software. I spent around 2 and half years at a software company where I wore many different hats, all of which were customer focused. There I learned about the software development life cycle, agile methodologies, databases, application design and architecture, how to communicate effectively to customers among many other things. Currently I am working as the business intelligence product owner where I am responsible managing all of the requests for data feeds into and out of our databases.
What is one thing you would like most about being a leader at Amazon? Least?
I would like the ability to learn to be a better leader as a leader while also teaching others.
How would you troubleshoot a performance issue on a windows server? What tools would you use and how?
I would start with the windows task manager, see which resources were reaching capacity, and then investigate what processes were the largest utilizers of that resource.
How would you find out what process was spiking the CPU on a windows server while you were not on the machine?
If process explorer is running during the spike, I can investigate what caused the spike after when I am able to get on the machine. Alternatively, I can use an analytics tool such as Grafana to track performance and processes live without being on the machine.
What is a table scan?
In SQL a table scan is when a query looks at every row in a table as opposed to using indexes.
What is a federation?
In terms of security and authentication, a federation is a configuration where an identity provider is responsible for user authentication and a service provider that limits access to resource based on the authorization provided by the identity provider. Example is AWS IAM for the identity provider
Explain the concept of microservices
Instead of having a monolithic application where if any one portion fails, the whole application fails, a microservice configuration means components of the application are stand alone and can be altered, updated, or taken down without impacting the other components
Tell me about a risk you took and succeeded
Invista
Tell me about a time you had a plan but ran into some obstacles. What did you do about it?
Invista training in Orange
Tell me about a time where a customer asked you for one thing but you knew they needed something else
Jeremy thought that ONEOK needed an entirely different permit configuration to meet the goals of one of the sites. He outright said he needed a new permit type but I questioned why, and was able to resolve the issue by showing him a way to use the functionality of the current permit configurations
What are the differences between layer 4 and 7?
Layer 7 is the application layer and has access to content within the request so it can be routed. Layer 4 is the transport layer using UDP and TCP and is context-less so it cannot see any data within. Layer 4 does not allow ssl offloading
Use cases for NoSQL
Less rigid data, looking for a more scalable option, lower data integrity, social media app. JSON format
What is LAMP stack
Linux, Apache, MySQL, PHP
What is MapReduce?
MapReduce is a data processing technique. First it splits data into multiple components to be processed on separate nodes. Then the individual results are aggregated to give final output. Map, shuffle, reduce.
Tell me about a time a project failed despite your best efforts
Marathon refining / pipeline
Tell me a time when you applied judgment to a decision when data was not available
Mark, P66, convert to paper permits
Which resources should you increase in a database if it is slow?
Memory / cpu. But also check queries, and indexes.
What are your biggest strengths?
My biggest strengths are my strong desire to continuously learn and my ability to empathetically communicate with people. I am of the mindset that people can pretty much learn to do anything and that being the case, I don't delegate work simply because I don't how to do something. For example,
What is your biggest weakness?
My biggest weakness is independence. I have a habit of siloing myself from other people and not asking for help. This has sometimes caused delay in my deliverables because I have spent too much time working to solve the an issue myself when other resources are available. Lately, especially in my current role with my current workload, I have forced myself to ask for help if I can't make any progress within a reasonably proportionate amount of time for the task
Explain a situation where you would have to migrate data from one AWS system to another?
New application replacing the old
Tell me about a time you had to help a colleague who was struggling
Nick SQL reporting
Is compression and deduplication the same thing? If not, why?
No, deduplication is a method of comparing unique factors of data blocks to identify and remove duplications. Compression removes redundant data within a datablock and is reversable. Both result in a smaller storage size.
Do you need NAT for IPv6?
No, network address translation is not necessary since there are enough IPv6 addresses for everyone.
If client A and client B have public keys can they decrypt each others sessions?
No, to decrypt encrypted data the associated private key should be used
Can you walk me through your biggest business impact?
Oneok 2.2 million
What are difficult technical design challenges faced while working on a project?
Oneok had a bunch of isolation points in their asset hierarchy that weren't recorded in their EAM solution, needed to get those into our permitting solution. Or stock program
Tell me about a time when you received negative feedback, what did you do about it?
Oneok release had regressions, and the new functionality didn't work as expected. Apologized for the miscommunication, reset the meeting agenda to explain how we can meet the short term goal of fixing the regressions and missing functionality plus how we can prevent future similar issues. Then went through every item that didn't meet expectations and why while taking notes.
Tell me about a time where you faced a number of unanticipated obstacles while working towards a key goal
Oneok, timezone, internet connectivity, app size, incorrect configuration, end user pushback on the created permits, api integration wasn't correct, they didn't store isolation points in their enterprise access management (EAM)
What are some issues faced when performing table scans in a database?
Performance costs, high I/O
Tell me about a time when you had to troubleshoot a solution and how did you do it?
Permit type changed on mobile, replicate the steps, determine which step the issue occurs in, and follow the data from there and to there.
Can you give me an example where you resolved a complex technical problem with a simple solution?
Permits on the mobile app. Using a 14 day rolling storage access. Templates had permanent access
Name some languages that don't require a compiler. What are their advantages / disadvantages?
Python and javascript are interpreted languages. C and C++ are compiled languages. Since the code of compiled languages is translated before run-time, execution is faster. Interpreted languages are translated at run-time so historically they are slower to execute.
Tell me about a time you used innovation to improve something?
Python scripts, importing users, plant items, templates
Why does an enterprise use RAID
RAID data storage methods allow for data redundancy and increased performance
What are the different types of RAIDs
RAID is redundant array of independent disks. Some types use the storage drives to write faster, others use for redundancy.
Use cases for SQL
Rigid data, lots of reporting, high data integrity, transactional data
How would you troubleshoot windows network slowness
Run a speed test, check the hardware, check network intensive processes
What are the differences between SQL and NoSQL?
SQL stores data in a rigid relational structure. The objective is to store not repeat the same data and to have all data stored the same way. It uses a table format where tables can be joined on other tables. NoSQL stores data in a flexible key value structure. It is best used for less rigid data structures, when you're looking to scale fast, and data integrity is not the highest concern
Tell me about an unpopular decision you had to make at work
Saying no to adding new requests into a sprint, executives and sales pushed me to change my mind
What is a virtual machine (VM)?
Software that can be installed in a Host Computer, allowing us to install multiple Operating Systems, using the Host's hardware.
What is the most recent project you are proud of, why, what was your role?
Stock Program, OneOK, Lundbeck
Tell me about a recent accomplishment you're most proud of
Stock program
Tell me about a time you had to make an urgent decision without data? What was the impact, would you do anything differently?
Telling Mark at p66 to convert the company to paper permits for the rest of the day
How does DHCP work?
Temp
How to deploy networking, VPN, and DNS for scalability?
Temp
How would you explain cloud services to a C level executive?
Temp
How would you make Amazon better?
Temp
Know agile
Temp
Learn some basic architecture designs
Temp
Tell me about a time when a coworker didn't meet your expectations and how did you handle it?
Temp
What was one of the most creative things you did to solve a problem?
Temp
Why the TAM role?
Temp
You have a 2 tier web app with multiple webservers, a load balancer, and a database server. Customer says all webpages have been loading slow for the past month. How would you identify the problem?
Temp
Tell me about a time when you needed data to make an informed decision
Template migration, didn't know which unit within a site was going to participate in the pilot. Only 3 templates needed to be copied over.
What is elasticity in AWS?
The ability to acquire resources as you need them and release them when you no longer need them
What is the difference between IPv6 and IPv4?
The biggest difference I'm aware of is quantity of available options
What is DNS zone?
The collection of name servers for a domain
What is a Linux shell (BASH)?
The command line for Linux
Tell me about the most complex problem you have ever worked on
The database I worked with primarily had around 600 tables for configuration and 200 tables for data. I was trying to define business rules for permit transitions via the database with no resources on how they worked
What is a top level domain TLD?
The top level domain is the .com, .gov, .edu, .net portion of a url
Why Amazon?
There are many reasons for why I'm applying to AWS. The first is the more I learn about what can be accomplished with AWS and how they have solved problems using innovation, the more excited I become about the future. The second reason is I've been very interested in focusing in cloud technologies for the past 3 years and by essentially all metrics Amazon is the industry leader. I could probably give several more reasons on top of that but I'll end it with a third. At two of my previous companies, I've been told that the pursuit of knowledge adjacent to the work I was doing is not relevant to my responsibilities. In both instances it ended up being very relevant and I was fortunate that I had spent time learning things in free time. I believe Aamzon is not the type of company to stifle the pursuit of knowledge.
Which of the leadership principles do you like the least?
Think big
What is traceroute and how is it created?
Traceroute is a tool to track the path and time a data packet follows when reaching a specific server
What is TCP?
Transmission Control Protocol (TCP) is a reliable transport protocol for data packets. Due to it's reliability and verification processes, it is the most widely used transmission protocol.
What is the black/red deployment setup?
Two different versions of an application exist. Could be for A/B testing, to send a small number of requests to the an updated version for testing, or to switch to a new upgrade version with minimal downtown
How do you prioritize tasks in your current role?
Typically by due date / severity. An outage requires faster attention than a development request.
What is UDP?
User Datagram Protocol (UDP) doesn't have the same verification capabilities for packets as TCP but allows for faster and more data to be transferred, however that data may be unreliable.
Tell me about about a time you solved a big problem in your company
User stories, custom internal website, project timelines
How does a session get established in TCP?
Using a 3-way handshake. First the client sends a sequence number to sync with the server, then the server sends it's own sequence number and an acknowledgement of the client, then the client sends an acknowledgement
How do you minimize downtime to an application so you can roll out upgrades/perform maintenance?
Using a red / black deployment strategy. Within AWS, you can AWS Elastic Beanstalk to deploy the upgrades with a traffic splitting policy.
How does an OS handle memory under pressure?
Using techniques such as swapping and paging. Swapping moves the an entire process out of the main memory and stores it in secondary memory, used for inactive processes. Paging moves blocks of a process is stored in secondary memory, used for active processes.
What is VLAN?
VLAN is a way to set up a virtual local area network using the same physical switch. This allows you to split up departments in a business
Whats the difference between a docker container and a VM?
Virtual machines are ran on top of hypervisors which allow multiple operating systems to be installed on the same hardware. In a VM the software is packaged with the whole operating system which requires more resources than necessary. In containers, all of the necessary dependencies and libraries are included in the software package without a operating system. Containers share the same kernel.
What is hyper-visor?
Virtualization software that allows physical resources to be used by multiple virtual machines. They can be installed as bare metal (most common) or on the operating system already installed (less common because of latency and security)
Tell me about a time when you used a radical approach to solve a problem
Wasn't allowed to work on Glencore or request development for them, using clever configuration and modifying the permit types to meet their needs
What happens when you open a website in the computer browser?
Your browser looks up the ip address via a DNS lookup process, once the IP address is found the browser initiates a connection to the server (or an edge location via CDN). Once the TCP connection is established, if it's https then a TLS handshake takes place to secure the communication. Then the browser sends an HTTP request that the server processes and sends a response. Then the browser renders content (if applicable) based on the html, css, and js.
Tell me about a risk you took and failed
bayway solo go live, system outage
Design an architecture to manage URL shortening
database, backend, frontend, the frontend uses javascript to redirect to the original site after the backend queries what the original site was
How is a host name resolved through the command line?
ipconfig /all