Fernando 🇮🇹🇨🇭 Profile picture
Aug 16 8 tweets 2 min read Read on X
Backend development is a challenging yet rewarding field.

If I had to start over again, these are the 7 steps I would take: ↓ Image
1. Learn a programming language

To get a job in backend programming, you need to be good at writing code.

Python, C#, and Java are all popular backend programming languages.

You don't have to be good at all of them, though.

Pick a language and learn it well.
2. Learn about server-side frameworks

Server-side frameworks are tools that help build the structure of any website.

They'll make the development process smoother and more efficient.

Popular frameworks are Flask (Python), Spring (Java), .NET Core (C#).
3. Learn database management

Backend development involves a lot of work with databases.

A solid understanding of DBMS and how to set up and maintain a database is essential.

Learn the difference between SQL and NoSQL.

To begin, you can choose between PostgreSQL and MongoDB.
4. Grasp Web Development Concepts

Backend development focuses on the server side,.

However, knowing about HTTP, HTML, CSS, and JavaScript is important.

They're the backbone of web application interaction.
5. APIs

APIs enable software applications to talk to each other by setting up rules and protocols.

Get familiar with different styles of APIs like REST, RPCs, and GraphQL.
6. Cloud computing and tools

Learn how to use Azure, AWS, Google Cloud, or Vercel, as well as how to deploy in the cloud.

Also, you must be able to use a versioning system like Git well.
7. Practice a lot

There's no better way to retain notions than getting hands-on experience.

Building personal or community projects and contributing to open-source are all valuable ways.

Becoming a skilled backend developer is a journey of continuous learning and practice.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Fernando 🇮🇹🇨🇭

Fernando 🇮🇹🇨🇭 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @Franc0Fernand0

Aug 6
If you're a software engineer who wants to upskill in system design, read these 12 articles: ↓ Image
1. How to answer this popular system design question: from a simple concept to a scalable system.

francofernando.substack.com/p/designing-a-…
2. A taxonomy of the most used types of database available on the market: relational, NoSQL, time-series and NewSQL.

newsletter.francofernando.com/p/database-cat…
Read 13 tweets
Jul 19
Every software developer needs to know how the HTTP protocol works.

Here are the 8 fundamental things you need to grasp: ↓ Image
1. What is HTTP

HTTP is an application-level protocol based on a request-response paradigm.

Its primary use is encoding and transporting information between a client and a server.

A typical HTTP transaction is made of 2 steps:

• a client sends a request message to a server

• the server replies with a response message
2. HTTP messages

A message is a block of text composed of multiple fields.

The main fields of an HTTP message are:

• the start line, indicating what a request is for or if the request was successful

• the headers, composed of key-value pairs metadata describing the message

• the (optional) body containing the data
Read 9 tweets
Jul 16
As a senior software engineer, you should read these famous white papers from big tech companies (AWS, Google, Meta,..): ↓
1. Dynamo: Amazon’s Highly Available Key-value Store

cs.cornell.edu/courses/cs5414…

2. Spanner: Google’s Globally-Distributed Database

static.googleusercontent.com/media/research…

3. Scaling Memcache at Facebook

usenix.org/system/files/c…
4. Zanzibar: Google’s Consistent, Global Authorization System

storage.googleapis.com/gweb-research2…

5. The Google File System

static.googleusercontent.com/media/research…

6. Bigtable: A Distributed Storage System for Structured Data

static.googleusercontent.com/media/research…
Read 7 tweets
Jun 25
If you're a software engineer who wants to learn the core concepts about system design and distributed systems, read these 12 articles: ↓ Image
1. How RAFT solves the consensus problem in distributed systems: a step-by-step breakdown that every engineer can understand.

newsletter.francofernando.com/p/the-raft-con…
2. How the TLS protocol works under the hood and why it's important.

newsletter.francofernando.com/p/understandin…
Read 13 tweets
Jun 14
What is API pagination?

A lot of times, REST APIs need to return 100+ results.

API pagination is a way to break such data into chunks that are easy to work with.

This improves user experience and reduces server load.

These are the 3 kind of API pagination you need to know: ↓ Image
1. Offset-Based

The API uses two parameters: "offset" determines the position in the dataset, while "limit" specifies the maximum number of data to include on each page.

This approach became popular with apps using SQL, which already have LIMIT and OFFSET as part of the syntax.

Example: GET products?limit=20&offset40

Pros: It's simple to set up and lets you go straight to any page.

Cons: There are performance issues with large OFFSET values. It can cause data to be duplicated or skipped in dynamic datasets.
2. Keyset-Based

The API uses a key parameter (like since_id) to determine data limits. The first request doesn't contain the key parameter.

The other requests use the last key value from the previous set.

Example: GET /products?limit=20since_id=20

Pros: It is more efficient than page-based and keeps dynamic datasets from duplicates.

Cons: It is tied to the sort order and can't go straight to a certain page.
Read 4 tweets
Jun 11
If you are a software engineer serious about getting better at algorithms and data structures, read these 12 articles: ↓ Image
1. How to use the two-pointer method to efficiently solving array and string problems (with code templates).

newsletter.francofernando.com/p/mastering-th…
2. How to effectively use sets and hash tables to solve coding interview problems

newsletter.francofernando.com/p/hashing-in-c…
Read 13 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(