Raul  Junco's Avatar

Raul Junco

@rauljunco.bsky.social

I simplify System Design, and System Design will make you a better Software Engineer. Writing at: https://newsletter.systemdesignclassroom.com/

132 Followers  |  187 Following  |  44 Posts  |  Joined: 22.11.2024  |  1.9932

Latest posts by rauljunco.bsky.social on Bluesky

Preview
Event Sourcing is like Time traveling I know we can travel back (we technically called it "reproducibility"), but can we travel to the future?

Event Sourcing isn't just about storing historyβ€”it's about understanding it.

Here is the link to the article

newsletter.systemdesignclassroom.com/p/event-sour...

18.01.2025 14:18 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 1

What Is Event Sourcing?

Key Concepts to Understand

How It All Comes Together: A Practical Example

The Read Problem in Event Sourcing and how to solve it.

The Power of Stored Events: The Opportunity in Data

Challenges and Considerations

18.01.2025 14:18 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Event Sourcing is like Time traveling.

I know we can travel back (we technically called it "reproducibility"), but can we travel to the future?

18.01.2025 14:18 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Data is the most critical part of your infrastructure.

Lose your network? That's just downtime.

Lose your data? That's game over.

Have you ever lost production data?

13.01.2025 13:54 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
A survival kit to beat APIs interview. 11 questions you need to know how to answer.

APIs are the glue of modern systems; mastering their concepts is what keeps you at the top of the candidate list.

If you could add one more question, what would it be?

Here is the link to the article πŸ‘‡

newsletter.systemdesignclassroom.com/p/a-survival...

Thanks for reading!

10.01.2025 02:05 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

7. What Is Pagination, and How Is It Implemented in REST APIs?

8. Can You Discuss Rate Limits and Their Importance?

9. What Is Idempotency, and Why Is It Important?

10. How Can You Improve API Performance?

11. How Do You Document REST APIs?

10.01.2025 02:05 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

1. Can You Explain CRUD Operations in the Context of REST?

2. What Is the Difference Between PUT and PATCH?

3. What Are Common HTTP Status Codes, and What Do They Mean?

4. What Does It Mean for a REST API to Be Stateless?

5. How Do You Secure a REST API?

6. How Do You Version a REST API?

10.01.2025 02:05 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

A survival kit to beat APIs interview.

Here are 11 questions you need to know how to answer.

10.01.2025 02:05 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

β€’ Write clear, helpful docs with examples.
β€’ Don’t break stuffβ€”use versioning.
β€’ Secure everything: auth, inputs, and outputs.

You barely notice it when it’s done rightβ€”it just gets out of your way.

What else makes APIs great?

03.01.2025 13:17 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

It should:

β€’ Keep names and structures consistent.
β€’ Make endpoints and errors easy to understand.
β€’ Support filtering, pagination, and sorting.
β€’ Avoid overloading or under-delivering data.

03.01.2025 13:17 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

A good API is like great architectureβ€”invisible when done well, painful when done poorly.

It feels natural and intuitive. It simply works!

03.01.2025 13:17 β€” πŸ‘ 2    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

πŸ‘Š

01.01.2025 20:58 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

My goal for next year: help more software engineers pass the System Design interview.

30.12.2024 13:12 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

My favorite way to handle distributed transactions is using SAGAs.

It does not provide true atomicity but helps with:

- Eventual Consistency
- Compensating Transactions
- Scalability
- Fault Tolerance

26.12.2024 15:22 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Great list @marcosflobo.bsky.social !

Thanks so much for reading my article.

20.12.2024 11:31 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Nobody told me I would miss my JOINs when I started in microservices. From JOINs to Latency: Managing Data in Microservices

newsletter.systemdesignclassroom.com/p/nobody-tol...

Thanks for reading!

19.12.2024 12:38 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Let's review an example and a practical approach.

- The Problem: JOINs Turn into HTTP Calls
- Data Replication: An approach that works
- Other Ways to Solve the JOIN Problem
- Some Takeaways

Check out all the insights in my latest article!πŸ‘‡

19.12.2024 12:38 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

When you move to microservices, you realize how hard it is to replicate that efficiency.

Since all those JOINs will become inter-communication calls, adding a performance tax.

19.12.2024 12:38 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Nobody told me I would miss my JOINs when I started in microservices.

Relational Databases are so good at joining data that we often forget until we miss our JOINs.

Breaking the database apart is one of the most complex tasks.

19.12.2024 12:38 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Preview
No matter what the books say, nobody likes making 20 requests to render a page. 3 Aggregation Patterns your consumers will love.


Good API design is like great architectureβ€”invisible when done well, painful when done poorly.

newsletter.systemdesignclassroom.com/p/three-powe...

13.12.2024 16:48 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

3. GraphQL

A flexible query language that minimizes over-fetching and under-fetching issues but requires careful design to avoid performance pitfalls.

13.12.2024 16:48 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

2. Backend for Frontend (BFF)

Provides UI-specific Backends, reducing unnecessary data fetching and promoting team autonomy while increasing maintenance overhead.

13.12.2024 16:48 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

More calls to the server add friction to development, and friction is No Bueno.

1. Central Aggregating Gateway

Acts as middleware to consolidate API calls into a single response, simplifying the Frontend but with potential bottleneck risks.

13.12.2024 16:48 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

No matter what the books say, nobody likes making 20 requests to render a page.

3 proven Aggregation Patterns your consumers will love.πŸ‘‡

13.12.2024 16:48 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Exceptional Resumes tell a story:

- Your skills
- Your Impact
- How you're the right fit

10.12.2024 15:29 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

100% recommended πŸ‘Œ

09.12.2024 19:39 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

- Tech Lead? You’re fighting for timelines, team priorities, and resources.

- Manager? Budgets, headcount, and deliverablesβ€”negotiation is your second job.

Negotiation is one of those skills that pays dividends everywhere.

09.12.2024 17:33 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

I can't think of a better Non-Technical skill than learning to negotiate.

If you are a:

- Freelancer? You’re negotiating your estimates, scope, and payment terms all day.

- Employee? You’ve got salary, promotions, and perks on the table.

Best book I have ever read on negotiation. πŸ‘‡

09.12.2024 17:33 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Hahaha trade-off everywhere.

06.12.2024 14:14 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Focus on Building Resilient Interactions, Not Just Resilient Services 5 things a truly resilient system needs.

Build Resilient Interactions, Not Just Resilient Services!

5 things a truly resilient system needs.

1. Caching
2. Prevent Cascading Failures
3. Fallback Behaviors
4. Retry Wisely
5. Go Asynchronous

Read the full article here. πŸ‘‡

newsletter.systemdesignclassroom.com/p/focus-on-b...

06.12.2024 12:16 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@rauljunco is following 18 prominent accounts