Builder Passport
Abdulfatai
@abdulfatai
Software engineer
21 posts 35 comments 3 followers 3 following Ilorin
My name is Sakariyau Abdulfatai Iβm a Full-Stack Software Developer skilled in JavaScript, TypeScript, React, Next.js, Node.js, Express.js, MongoDB, PostgreSQL, GitHub, and modern web application development.
Professional Passport
Professional Builder
Free courses and real projects strengthen your Passport.
Your journey
-
01 Learn
Browse free Academy courses
-
02 Prove Done
20 Certificate(s) of Completion
20
-
03 Showcase Done
2 public project(s) Β· 4 challenge(s)
2
-
04 Discover Done
Recruiter-facing Passport completeness Β· 100%
100/100
Activity score
A living view of what theyβve been doing β posts, comments, projects, and learning.
Posts
If databases can store images, why do engineers upload them to S3 instead?
If databases can store images, why do engineers upload them to S3 instead? I see this question a lot: βIsnβt it simpler to just store the image in the database?β Technically, yes, you can. Practically, you shouldnβt β at least not at scale. Databases are built to store and query structured data efficiently. Rows, columns, indexes, relationships. Theyβre optimized for fast lookups on small, structured records. Images are large binary blobs. Storing them directly in the database (as BLOBs) works, but it comes with real costs. Hereβs why engineers avoid it: Database size explodes. A few thousand images can bloat your database from megabytes to gigabytes, slowing down backups, replication, and every query that touches that table. Performance degrades. Every query scanning that table now has to skip over large binary data, even if it doesnβt need it. Indexes get heavier. Caching gets less effective. Backups become painful. Backing up a database with embedded images means backing up the images every single time, even if they never change. Scaling gets expensive. Databases are built to scale reads and writes on structured data, not to serve millions of static files efficiently. S3 (or any object storage) is purpose-built for this. Itβs designed to store large files cheaply, serve them directly over HTTP, scale horizontally without effort, and integrate with CDNs for fast global delivery. So the actual pattern most engineers use: Store the image in S3. Store the URL (or key) to that image in the database. The database stays lean and fast. The file storage handles what itβs built for. So instead of asking: βCan the database store this?β Ask: βIs this the right tool to store and serve this efficiently?β The goal isnβt to use one system for everything. The goal is to let each system do what itβs designed to do. Databases arenβt bad at storing images. Theyβre just not the right tool for the job.
URL vs URI: Theyβre not two competing terms.
URL vs URI: Theyβre not two competing terms. I see this question a lot: βIsnβt URL just another word for URI?β Not quite. One is a category. The other fits inside it. URI (Uniform Resource Identifier) is the umbrella term. Any string that identifies a resource β by location, by name, or both β is a URI. URL (Uniform Resource Locator) is one type of URI. It identifies a resource by where it is, and how to get there. Thereβs also URN (Uniform Resource Name). It identifies a resource by what itβs called, not where it lives. Example: https://example.com/paper.pdf β a URL. It gives you a location and an access method. urn:isbn:0451450523 β a URN. It names a book. No location involved. Both are URIs. Every URL is a URI. Not every URI is a URL. So instead of asking: βWhich term is correct here?β Ask: βAm I pointing to a location, or just naming something?β The goal isnβt to sound precise. The goal is to be precise. URI isnβt a fancier way to say URL. URL is just one shape a URI can take.
PostgreSQL vs MongoDB: Why neither is better than the other.
PostgreSQL vs MongoDB: Why neither is better than the other. I see this question a lot: βShould I use PostgreSQL or MongoDB?β And honestly, there is no universal winner. PostgreSQL is a relational database. It is a great choice when your application has structured data, relationships between entities, complex queries, transactions, and strong data consistency requirements. MongoDB is a NoSQL document database. It can be a great choice when you need flexible schemas, document-oriented data, rapid development, or your data naturally fits a JSON-like structure. For example: An e-commerce application may benefit from PostgreSQL when you have relationships between users, products, orders, payments, inventory, and reviews. But an application dealing with flexible and frequently changing document structures may be a good fit for MongoDB. So instead of asking: βWhich database is better?β Ask: βWhich database is better for my application's requirements?β The goal isn't to choose the most popular database. The goal is to choose the right tool for the problem. PostgreSQL isn't better than MongoDB. MongoDB isn't better than PostgreSQL. They are different tools designed to solve different problems. i hope you find this heplful. if yes, like comment, and share. follow for more.
Authentication vs Authorization β they are NOT the same thing. π
Authentication vs Authorization β they are NOT the same thing. π If youβre learning backend development, you need to understand this difference. Imagine you want to enter a company. First, the security guard asks for your ID card. If the ID proves that you are who you claim to be, you are allowed into the building. That is Authentication. π Authentication = Who are you? Now, imagine youβve entered the company. Youβre an employee, but you canβt just walk into the CEOβs office or access the companyβs private database. Your role determines what youβre allowed to access. That is Authorization. π Authorization = What are you allowed to do? In a web application: Authentication Login with email/password Verify OTP Verify identity Create/manage a session or token Authorization Admin can delete users User can view their own orders Manager can access certain resources Regular users cannot access admin routes The easiest way to remember it: π Authentication β Who are you? π‘οΈ Authorization β What can you access? You can be authenticated but not authorized to perform a particular action. For example, you can successfully log into an admin dashboard as a normal user, but you shouldn't be able to delete another user's account. Authentication comes first. Authorization decides what happens after. If you're learning backend development, don't just memorize these terms. Understand how they work together. π
If youβre learning Node.js, donβt just know package.json exists. Understand why it matters. π
If youβre learning Node.js, donβt just know package.json exists. Understand why it matters. π Youβve probably seen these two files in almost every JavaScript/Node.js project: π¦ package.json π package-lock.json But why should you care about the difference? Because understanding them helps you: β Avoid dependency/version conflicts β Keep your project consistent across different machines β Debug package installation issues β Make deployments more reliable β Work better with other developers β Understand how npm manages your project dependencies Think of it this way: package.json tells npm what your project needs. package-lock.json records the exact dependency versions that were installed. For example, your package.json might say: "I need Express." While the package-lock.json helps npm know: "Here is the exact version of Express and its dependency tree that was installed." These may look like small files, but understanding concepts like this is part of moving from βI can write codeβ to βI understand how my project actually works.β π Donβt just learn to use tools. Learn what they are doing behind the scenes.
My is SAKARIYAU ABDULFATAI.
My is SAKARIYAU ABDULFATAI. A Professional web developer and full-stack software engineer based in Ilorin, Nigeria. I build beautiful, performant web applications that helps businesses grow across Ilorin, Lagos, and Nigeria.
I just share some of my project. please check and review. if you like it, please give a like share and comment. thank you
I just share some of my project. please check and review. if you like it, please give a like share and comment. thank you
Captain Black Global Services
Captain Black Global Services Marketing site for a premium catering company serving weddings, corporate events, and private dining. LInk -> https://www.captainblackglobalservice.com
Wall
Leave a note for Abdulfatai. The builder and Africoders staff can moderate this wall.
Sign in to post on this wall.
Comments
Replies across Africoders β open any thread to read the full conversation.
Challenges
1 win Β· 1 completed
Weekly Β· Winner Β· Won 4 Sep 2026 Β· β¦5,000
About
Post about a project you built, are building, or built before. Explain the problem, what you made, and what you learned.
- Status
- Winner
- Date won
- 4 September 2026
- What they won
- Winner Β· β¦5,000
- Rewards
- 70 campaign points Β· Weekly recognition β¦20,000 (staff-selected)
- Rank
- #2
Weekly Β· Submitted Β· Submitted 3 Sep 2026 Β· Up to β¦5,000
About this challenge
Share something useful. Quality beats volume.
- Status
- Submitted
- Challenge ends
- 11 Sep 2026
- Prizes to win
-
- Poster of the Week Β· β¦5,000
- Rank
- #5
Build challenge Β· Submitted Β· Submitted 30 Aug 2026 Β· Up to β¦400,000
About this challenge
Build something useful. Ship it. Get discovered.
- Status
- Submitted
- Challenge ends
- 30 Sep 2026
- Prizes to win
-
- 1st Place Β· β¦200,000
- 2nd Place Β· β¦120,000
- 3rd Place Β· β¦50,000
- Community Choice Β· β¦30,000
Weekly Β· Joined Β· Joined 3 Sep 2026 Β· Up to β¦20,000
About this challenge
Imagine you have β¦10M and a full developer team. What problem in Africa would you solve, and how? Write the problem and your solution in 250 words or fewer.
- Status
- Joined
- Challenge ends
- 11 Sep 2026
- Prizes to win
-
- Weekly recognition Β· β¦20,000
Proof of work
Activity
Challenges, projects, and profile milestones.
Skills & stack
Industries: .