Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save davidystephenson/d0ef24f1be4e6808fce695010daffcb4 to your computer and use it in GitHub Desktop.

Select an option

Save davidystephenson/d0ef24f1be4e6808fce695010daffcb4 to your computer and use it in GitHub Desktop.
# Questions
## 1. JavaScript
Explain the concept of closures in JavaScript and provide a scenario where they might cause memory leaks if not handled properly.
## 2. TypeScript
How would you type a function that accepts either a string or number and returns the same type that was passed in?
## 3. Backend JavaScript
Your application makes 10 external API calls sequentially, and each takes 500ms. How would you refactor this to improve speed? How would you implement error handling?
## 4. Express
How would you implement request logging that captures the response time for each endpoint?
## 5. API Design
What are the key differences between REST and GraphQL, and what factors would influence your decision to choose one over the other?
## 6. Authentication
Describe how JWT-based authentication works. How does it differ from OAuth 2.0 authorization flow?
## 7. General Databases
What is database normalization, and what are the trade-offs between normalized and denormalized data models?
## 8. SQL
You have a users table and an orders table. Write a query to find users who have made more than 5 orders in the last 30 days, including their total order count and total amount spent.
## 9. NoSQL Databases
What are the key differences between document-based, key-value, column-family, and graph databases? What use cases are each best suited for?
## 10. Drizzle
How would you write a Drizzle query to fetch all posts with their associated author information and comment counts in a single query?
## 11. Caching
You're building a dashboard that shows data that updates every 5 minutes. How would you use caching to improve performance while ensuring users don't see stale data?
## 12. Security
What is SQL injection? How can you prevent it in your applications?
## 13. Testing
You're testing an API endpoint that creates a user and sends a welcome email. How would you structure your test to verify both actions without actually sending emails?
## 14. Performance Optimization
Your Node.js applications' memory usage grows from 100MB to 800MB over 6 hours. Your investigation discovers that your user cache contains 200,000 objects, but your application only has 5,000 active users. What is likely happening? How do you fix it?
## 15. DevOps
What is the difference between continuous integration, continuous delivery, and continuous deployment?
## 16. Cloud
Your application needs to handle file uploads. Would you store files directly in your database, on the server's filesystem, or use object storage like S3? Explain your reasoning and the trade-offs.
## 17. Monitoring
What key metrics would you monitor for a web API, and what would be your approach to setting up meaningful alerts?
## 18. System Design
You are building a notification system that sends emails when users receive messages. How would you ensure notifications are sent reliably even if your API server crashes?
## 19. Architecture
How would you organize a medium-sized Express application's folder structure to separate concerns between routes, business logic, and data access?
## 20. Microservices
You have separate services for users, orders, and inventory. When a user places an order, how would you ensure all three services stay synchronized if one service fails during the transaction?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment