EP128: The Ultimate Software Architect Knowledge Map

EP128: The Ultimate Software Architect Knowledge Map

This week’s system design refresher:
͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­͏     ­
Forwarded this email? Subscribe here for more

This week’s system design refresher:

  • The Ultimate Software Architect Knowledge Map

  • Is PostgreSQL eating the database world?

  • 11 steps to go from Junior to Senior Developer

  • Tech Career Basic Requirements

  • SPONSOR US


Cut your QA cycles down to minutes with QA Wolf (Sponsored)

If slow QA processes bottleneck you or your software engineering team and you’re releasing slower because of it — you need to check out QA Wolf.

Their AI-native approach gets engineering teams to 80% automated end-to-end test coverage from hours to minutes.

QA Wolf takes testing off your plate. They can get you:

  • Unlimited parallel test runs

  • 24-hour maintenance and on-demand test creation

  • Human-verified bug reports sent directly to your team

  • Zero flakes guaranteed

The benefit? No more manual E2E testing. No more slow QA cycles. No more bugs reaching production.

With QA Wolf, Drata’s team of 80+ engineers achieved 4x more test cases and 86% faster QA cycles.

Schedule a demo to learn more


The Ultimate Software Architect Knowledge Map

Becoming a Software Architect is a journey where you are always learning. But there are some things you must definitely strive to know.

graphical user interface, application
  1. Master a Programming Language
    Look to master 1-2 programming languages such as Java, Python, Golang, JavaScript, etc.

  2. Tools
    Build proficiency with key tools such as GitHub, Jenkins, Jira, ELK, Sonar, etc.

  3. Design Principles
    Learn about important design principles such as OOPS, Clean Code, TDD, DDD, CAP Theorem, MVC Pattern, ACID, and GOF.

  4. Architectural Principles
    Become proficient in multiple architectural patterns such as Microservices, Publish-Subscribe, Layered, Event-Driven, Client-Server, Hexagonal, etc.

  5. Platform Knowledge
    Get to know about several platforms such as containers, orchestration, cloud, serverless, CDN, API Gateways, Distributed Systems, and CI/CD

  6. Data Analytics
    Build a solid knowledge of data and analytics components like SQL and NoSQL databases, data streaming solutions with Kafka, object storage, data migration, OLAP, and so on.

  7. Networking and Security
    Learn about networking and security concepts such as DNS, TCP, TLS, HTTPS, Encryption, JWT, OAuth, and Credential Management.

  8. Supporting Skills
    Apart from technical, software architects also need several supporting skills such as decision-making, technology knowledge, stakeholder management, communication, estimation, leadership, etc.

Over to you - What else would you add to the roadmap?


Tech Career Basic Requirements

Source: Aigent

Is PostgreSQL eating the database world?

It seems that no matter what the use case, PostgreSQL supports it. When in doubt, you can simply use PostgreSQL.

No alt text provided for this image
  1. TimeSeries
    PostgreSQL embraces Timescale, a powerful time-series database extension for efficient handling of time-stamped data.

  2. Machine Learning
    With pgVector and PostgresML, Postgres can support machine learning capabilities and vector similarity searches.

  3. OLAP
    Postgres can support OLAP with tools such as Hydra, Citus, and pg_analytics.

  4. Derived
    Even derived databases such as DuckDB, FerretDB, CockroachDB, AlloyDB, YugaByte DB, Supabase, etc provide PostgreSQL.

  5. GeoSpatial
    PostGIS extends PostgreSQL with geospatial capabilities, enabling you to easily store, query, and analyze geographic data.

  6. Search
    Postgres extensions like pgroonga, ParadeDB, and ZomboDB provide full-text search, text indexing, and data parsing capabilities.

  7. Federated
    Postgres seamlessly integrates with various data sources such as MongoDB, MySQL, Redis, Oracle, ParquetDB, SQLite, etc, enabling federated querying and data access.

  8. Graph
    Apache AGE and EdgeDB are graph databases built on top of PostgreSQL. Also, pg_graphql is an extension that provides GraphQL support for Postgres.

Over to you: Have you seen any other use cases of PostgreSQL?


Latest articles

If you’re not a paid subscriber, here’s what you missed.

No alternative text description for this image
  1. A Crash Course on Scaling the Data Layer

  2. A Crash Course on Load Balancers for Scaling

  3. A Crash Course on Scaling the API Layer

  4. A Crash Course on Architectural Scalability

  5. A Crash Course on Microservices Design Patterns

To receive all the full articles and support ByteByteGo, consider subscribing:


11 steps to go from Junior to Senior Developer

graphical user interface, application
  1. Collaboration Tools
    Software development is a social activity. Learn to use collaboration tools like Jira, Confluence, Slack, MS Teams, Zoom, etc.

  2. Programming Languages
    Pick and master one or two programming languages. Choose from options like Java, Python, JavaScript, C#, Go, etc.

  3. API Development
    Learn the ins and outs of API Development approaches such as REST, GraphQL, and gRPC.

  4. Web Servers and Hosting
    Know about web servers as well as cloud platforms like AWS, Azure, GCP, and Kubernetes

  5. Authentication and Testing
    Learn how to secure your applications with authentication techniques such as JWTs, OAuth2, etc. Also, master testing techniques like TDD, E2E Testing, and Performance Testing

  6. Databases
    Learn to work with relational (Postgres, MySQL, and SQLite) and non-relational databases (MongoDB, Cassandra, and Redis).

  7. CI/CD
    Pick tools like GitHub Actions, Jenkins, or CircleCI to learn about continuous integration and continuous delivery.

  8. Data Structures and Algorithms
    Master the basics of DSA with topics like Big O Notation, Sorting, Trees, and Graphs.

  9. System Design
    Learn System Design concepts such as Networking, Caching, CDNs, Microservices, Messaging, Load Balancing, Replication, Distributed Systems, etc.

  10. Design patterns
    Master the application of design patterns such as dependency injection, factory, proxy, observers, and facade.

  11. AI Tools
    To future-proof your career, learn to leverage AI tools like GitHub Copilot, ChatGPT, Langchain, and Prompt Engineering.

Over to you: What else would you add to the roadmap?


SPONSOR US

Get your product in front of more than 1,000,000 tech professionals.

Our newsletter puts your products and services directly in front of an audience that matters - hundreds of thousands of engineering leaders and senior engineers - who have influence over significant tech decisions and big purchases.

Space Fills Up Fast - Reserve Today

Ad spots typically sell out about 4 weeks in advance. To ensure your ad reaches this influential audience, reserve your space now by emailing hi@bytebytego.com

 
Like
Comment
Restack
 

© 2024 ByteByteGo
548 Market Street PMB 72296, San Francisco, CA 94104
Unsubscribe

Get the appStart writing


by "ByteByteGo" <bytebytego@substack.com> - 11:35 - 7 Sep 2024