Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/raychongtk/awesome-software-engineer
Something that your school doesn't teach you
https://github.com/raychongtk/awesome-software-engineer
List: awesome-software-engineer
awesome-list awesome-resources backend software-architecture software-development software-engineering
Last synced: 16 days ago
JSON representation
Something that your school doesn't teach you
- Host: GitHub
- URL: https://github.com/raychongtk/awesome-software-engineer
- Owner: raychongtk
- Created: 2023-02-21T14:57:32.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-10-17T12:23:38.000Z (about 1 year ago)
- Last Synced: 2024-05-23T04:13:25.600Z (7 months ago)
- Topics: awesome-list, awesome-resources, backend, software-architecture, software-development, software-engineering
- Homepage: https://awesomesoftwareengineer.com/
- Size: 37.2 MB
- Stars: 25
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Security: docs/security.md
Awesome Lists containing this project
- ultimate-awesome - awesome-software-engineer - Something that your school doesn't teach you. (Other Lists / Monkey C Lists)
README
Awesome Software Engineer
Awesome Software Engineer is a community to share software engineering topics and inspires software engineers. Check out my website: https://blog.awesomesoftwareengineer.com/## Microservices
- [Microservices Documentation](https://blog.awesomesoftwareengineer.com/p/centralize-microservices-api-documentation)
- [The Path to Microservices: Opening Chapter](https://blog.awesomesoftwareengineer.com/p/the-path-to-microservices-opening)
- [The Path to Microservices: What are Microservices?](https://blog.awesomesoftwareengineer.com/p/what-are-microservices)
- [The Path to Microservices: Do You Really Need Microservices Architecture?](https://blog.awesomesoftwareengineer.com/p/do-you-need-microservices-architecture)
- [The Path to Microservices: CAP Theorem](https://blog.awesomesoftwareengineer.com/p/cap-theorem)
- [The Path to Microservices: Service Discovery](https://blog.awesomesoftwareengineer.com/p/service-discovery)
- [The Path to Microservices: CI/CD](https://blog.awesomesoftwareengineer.com/p/microservice-ci-cd)
- [The Path to Microservices: API Gateway Aggregation Pattern](https://blog.awesomesoftwareengineer.com/p/api-gateway-aggregation-pattern)
- [Microservices ecosystem](https://blog.awesomesoftwareengineer.com/p/microservices-ecosystem)
- [The pains of microservices - Part 1](https://blog.awesomesoftwareengineer.com/p/the-pains-of-microservices-part-1)
- [The pains of microservices - Part 2](https://blog.awesomesoftwareengineer.com/p/the-pains-of-microservices-part-2)
- [Distributed tracing and distributed logging](https://blog.awesomesoftwareengineer.com/p/distributed-tracing-and-distributed)
## Architecture
- [Understand Observability](https://blog.awesomesoftwareengineer.com/p/understand-observability)
- [Log Monitoring and Alerting](https://blog.awesomesoftwareengineer.com/p/log-monitoring-and-alerting)
- [4 Popular Cache Patterns](https://blog.awesomesoftwareengineer.com/p/cache-strategies)
- [Cache delete strategy of the cache-aside pattern](https://blog.awesomesoftwareengineer.com/p/cache-delete-strategy)
- [Handling jobs efficiently](https://blog.awesomesoftwareengineer.com/p/scheduled-job-vs-delay-queue)
- [API vs Webhook](https://blog.awesomesoftwareengineer.com/p/api-vs-webhook)
- [Understanding the software complexity](https://blog.awesomesoftwareengineer.com/p/software-complexity)
- [Why do we need Webhook?](https://blog.awesomesoftwareengineer.com/p/why-do-we-need-webhook)
- [Understanding system bottleneck](https://blog.awesomesoftwareengineer.com/p/understanding-system-bottleneck)
- [What is Event Driven Architecture?](https://blog.awesomesoftwareengineer.com/p/what-is-event-driven-architecture-26f)
- [Event-Driven Payment Architecture](https://blog.awesomesoftwareengineer.com/p/event-driven-payment-architecture)
- [Boost API read performance by 10x with cache](https://blog.awesomesoftwareengineer.com/p/boost-api-read-performance-by-10x)
- [How does Lalamove scale its Communication Platform?](https://blog.awesomesoftwareengineer.com/p/how-does-lalamove-scale-its-communication)
- [Redesign your development workflow with Mock Service](https://blog.awesomesoftwareengineer.com/p/redesign-development-workflow-with-mock-service)
- [Architecting for Simplicity](https://blog.awesomesoftwareengineer.com/p/architecting-for-simplicity)
- [Architecture Mystery](https://blog.awesomesoftwareengineer.com/p/architecture-mystery)
- [Consistency and Availability](https://blog.awesomesoftwareengineer.com/p/consistency-and-availability)
- [Pub/Sub Practical Guide: Use Case](https://blog.awesomesoftwareengineer.com/p/pubsub-practical-guide-use-case)
- [Pub/Sub Practical Guide: Trade-off](https://blog.awesomesoftwareengineer.com/p/pubsub-practical-guide-trade-off)
- [Why do we need architecture?](https://blog.awesomesoftwareengineer.com/p/why-do-we-need-architecture)
- [Design for Adaptability](https://blog.awesomesoftwareengineer.com/p/design-for-adaptability)
- [Exploring Architecture: What Does It Really Mean?](https://blog.awesomesoftwareengineer.com/p/exploring-architecture-what-does)
## Coding and Software Design
- [Duplication is better than Wrong Abstraction](https://blog.awesomesoftwareengineer.com/p/duplication-is-better-than-wrong-abstraction)
- [Design Principles: Simple is the best](https://blog.awesomesoftwareengineer.com/p/simple-is-the-best)
- [Code Review: Code Author Journey](https://blog.awesomesoftwareengineer.com/p/code-review-code-author-journey)
- [Code Review: Reviewer Journey](https://blog.awesomesoftwareengineer.com/p/code-review-reviewer-journey)
- [Choose the right way to create objects](https://blog.awesomesoftwareengineer.com/p/constructor-vs-static-factory-method)
- [Build a complex object](https://blog.awesomesoftwareengineer.com/p/builder-pattern)
- [Gracefully handle dynamic behaviors in the same category](https://blog.awesomesoftwareengineer.com/p/strategy-pattern)
- [Avoid throwing exceptions as control flow](https://blog.awesomesoftwareengineer.com/p/throwing-exceptions-vs-control-flow)
- [Backward Compatibility Thinking](https://blog.awesomesoftwareengineer.com/p/backward-compatibility-thinking)
- [Backward compatibility trade-off](https://blog.awesomesoftwareengineer.com/p/backward-compatibility-trade-off)
- [Design Space Optimization](https://blog.awesomesoftwareengineer.com/p/design-space-optimization)
## API Design
- [Everything about RESTful API](https://blog.awesomesoftwareengineer.com/p/everything-about-restful-api)
- [Let UI drive API design](https://blog.awesomesoftwareengineer.com/p/let-ui-drives-api-deisgn)
- [Designing API with the right granularity](https://blog.awesomesoftwareengineer.com/p/designing-api-with-the-right-granularity)
- [How to handle API backward compatibility?](https://blog.awesomesoftwareengineer.com/p/how-to-handle-api-backward-compatibility)
- [Improve performance when retrieving large dataset](https://blog.awesomesoftwareengineer.com/p/improve-performance-when-retrieving)
- [Do you use pagination right?](https://blog.awesomesoftwareengineer.com/p/do-you-use-pagination-right)
- [Enhancing API Performance Through Batch Requests](https://blog.awesomesoftwareengineer.com/p/enhancing-api-performance-through)
## Security
- [What is JWT?](https://blog.awesomesoftwareengineer.com/p/what-is-jwt)
- [OAuth Explained](https://blog.awesomesoftwareengineer.com/p/oauth-explained)
- [Never Trust Your Frontend When Developing API](https://blog.awesomesoftwareengineer.com/p/never-trust-your-frontend-when-developing)
- [Designing Authentication for Your Public API Platform](https://blog.awesomesoftwareengineer.com/p/authentication-for-external-api-platform)
- [How To Protect Your Code On The Client Side?](https://blog.awesomesoftwareengineer.com/p/how-to-protect-your-code-on-the-client)
- [Security Practices: Blocklist vs Allowlist](https://blog.awesomesoftwareengineer.com/p/blocklist-vs-allowlist)
- [Software Supply Chain Security](https://blog.awesomesoftwareengineer.com/p/software-supply-chain-security)
- [Passwordless Authentication](https://blog.awesomesoftwareengineer.com/p/passwordless-authentication)
- [Secure web application with CSP](https://blog.awesomesoftwareengineer.com/p/content-security-policy)
- [What is two factors authentication?](https://blog.awesomesoftwareengineer.com/p/two-factors-authentication)
- [How does an authenticator work?](https://blog.awesomesoftwareengineer.com/p/how-does-an-authenticator-work)
- [Hashing vs Encryption vs Encoding](https://blog.awesomesoftwareengineer.com/p/hashing-vs-encryption-vs-encoding)
- [SMS Pumping](https://blog.awesomesoftwareengineer.com/p/sms-pumping)
## General Software Engineering
- [Any problem in computer science can be solved by another layer of indirection](https://blog.awesomesoftwareengineer.com/p/solve-problem-by-adding-another-layer)
- [Everything is a trade-off](https://blog.awesomesoftwareengineer.com/p/everything-is-a-trade-off)
- [How do chatbots boost your productivity?](https://blog.awesomesoftwareengineer.com/p/chatbot-driven-development)
- [3 non-technical books that influenced me](https://blog.awesomesoftwareengineer.com/p/3-non-technical-books-that-influenced)
- [From chaos to clarity](https://blog.awesomesoftwareengineer.com/p/from-chaos-to-clarity)
- [Tips for writing good documentation](https://blog.awesomesoftwareengineer.com/p/tips-for-writing-good-documentation)
- [Navigating Complex Problem Spaces: Breakdown and Direction](https://blog.awesomesoftwareengineer.com/p/navigating-complex-problem-spaces)
- [How do you delegate your tasks to others?](https://blog.awesomesoftwareengineer.com/p/how-do-you-delegate-your-tasks-to)
- [Serialization vs Parallelization](https://blog.awesomesoftwareengineer.com/p/serialization-vs-parallelization)