๐—ง๐˜„๐—ผ ๐—•๐—ฎ๐—ฐ๐—ธ๐—ฒ๐—ป๐—ฑ ๐—Ÿ๐—ฒ๐˜€๐˜€๐—ผ๐—ป๐˜€ ๐—™๐—ฟ๐—ผ๐—บ ๐— ๐˜† ๐—›๐—ก๐—š ๐—œ๐—ป๐˜๐—ฒ๐—ฟ๐—ป๐˜€๐—ต๐—ถ๐—ฝ

I spent months at HNG writing backend code. I broke things and fixed them. Two tasks taught me the most. One was solo. One was with a team.

I built a backend for a product called Insighta. The backend served two clients:

Browsers use cookies. Terminals do not. The problem was not the API. It was the security model. Both clients needed to trust it.

I used GitHub OAuth and PKCE. The CLI starts a local web server on your machine. This server is the redirect target for GitHub. The CLI then exchanges a code for a token. Tokens go to a credentials file. File permissions stop other users from reading them.

This task taught me to read specs. I stopped copying patterns. I built a flow based on the rules.

I worked on a project called SEIL. My task was session management and account lockout.

Individual endpoints worked. The full flow failed. I found gaps in the team code:

I fixed these gaps. I added cookie parsing. I made token issuance always write to Redis.

I read teammate code first. I walked the full user path before writing a single line.

Team bugs live in the gaps. Assumptions disagree. Everyone is right. The product is still broken. Strict discipline kept the codebase sane.

These two tasks taught one lesson. Do not trust things working together only because they work apart. Walk the whole path yourself. This instinct is my best lesson from HNG.

Source: https://dev.to/ibraheembello/two-backend-tasks-from-my-hng-internship-that-stuck-with-me-ibe