SkylineCodes

SkylineCodes is a software engineering-focused Substack that covers deep domain knowledge aimed at transitioning careers from beginner to expert. It explores topics like data systems, databases, software architecture patterns, technology protocols, software scalability, reliability, and modern engineering practices like microservices and distributed transactions.

Software Engineering Data Systems Databases Software Architecture Scalability and Reliability Microservices Distributed Transactions Networking Sustainable Engineering

The hottest Substack posts of SkylineCodes

And their main takeaways
19 implied HN points β€’ 10 Feb 24
  1. Decomposing a monolithic application into microservices pattern helps scale and deploy services independently which is crucial for agility and quick feature updates in a competitive market.
  2. Understanding the Scale Cube model and its dimensions (X-axis scaling, Y-axis scaling, Z-axis scaling) is essential for designing scalable and resilient software architectures.
  3. Decomposing by business capability and subdomain are effective strategies for breaking down microservices, ensuring cohesive and loosely coupled services aligned with business needs.
19 implied HN points β€’ 27 Jan 24
  1. Designing a hotel reservation system involves considering distributed transactions, idempotency, and concurrency.
  2. Atomic transactions in a microservice architecture can be ensured through approaches like Two-Phase Commit and Saga Pattern.
  3. To avoid double booking by the same user, implementing an idempotent key system can be effective.
19 implied HN points β€’ 06 Jan 24
  1. Building a distributed system handling transactions is complex and involves coordination between multiple services, networks, and databases.
  2. Challenges in implementing distributed transactions include maintaining atomicity, where either all steps complete or none do.
  3. Industrial standards like the two-phase commit and saga pattern aid in implementing distributed transactions in a microservice architecture.
39 implied HN points β€’ 22 Aug 23
  1. Databases solved issues like data redundancy, inconsistency, and security vulnerabilities compared to file-based systems.
  2. Database Management Systems (DBMS) are suites of software components that facilitate efficient data creation, access, and modification.
  3. Different data models like relational, network, document, hierarchical, and dimensional play crucial roles in organizing and representing data in modern databases.
39 implied HN points β€’ 14 Aug 23
  1. Data systems can include various technologies for storing data which might not fit traditional categories, like Redis for both data storage and message queuing.
  2. Reliability in a system means it continues to work correctly even when faced with adversity like hardware or software faults, errors, or malicious attacks.
  3. Scalability is crucial for a system to handle increased loads, measured by metrics like requests per second, read-to-write ratio, and response times.
Get a weekly roundup of the best Substack posts, by hacker news affinity:
19 implied HN points β€’ 31 Jul 23
  1. Pull technology lets users choose what information they want to receive and when, making them more involved and knowledgeable.
  2. HTTP streaming, including HTTP live streaming, allows for real-time data transfer efficiently, enhancing user experience.
  3. WebSocket is an efficient way for clients and servers to communicate in real-time, maintaining an open connection for faster, resource-friendly data exchange.
19 implied HN points β€’ 17 Jul 23
  1. Event-Driven Architecture (EDA) allows different parts of a system to communicate through events, making the system more flexible and easier to maintain.
  2. In EDA, communication is asynchronous, immediate, and detailed, with events processed based on shared characteristics and sorted into groups.
  3. Microservices architecture enables independent functions to operate separately, providing flexibility and scalability, but comes with challenges like data management.
0 implied HN points β€’ 13 Jan 24
  1. High availability is crucial in distributed systems to ensure uninterrupted services despite failures or increased demand.
  2. Failover systems help in seamlessly transitioning to backup systems to minimize user impact during failures.
  3. Address Resolution Protocol (ARP) is essential for mapping IP addresses to MAC addresses, enabling communication in a network.
0 implied HN points β€’ 21 Sep 23
  1. Networking is essential for software engineers to understand for developing software systems.
  2. Different components like switches, routers, and network layers play vital roles in networking for data transfer.
  3. Internet Service Providers (ISPs) are crucial in connecting devices worldwide through underwater cables.
0 implied HN points β€’ 12 Sep 23
  1. Sustainable engineering involves building software with minimal environmental impact.
  2. Uber focuses on awareness, training, and sustainability improvements in their engineering practices.
  3. Best practices for sustainability include understanding impact, optimizing resources, and adopting new technologies.