Abeni Codes
158 subscribers
33 photos
5 videos
33 links
I post about my insights, new discoveries, projects and advices related to tech mainly and other topics once in a while. You can DM me @abeni_al7 for professional or collaborative queries.
Download Telegram
โšก5
Things You Need to Know as a Backend Software Engineer ๐Ÿš€๐Ÿ’ป

In your software engineering journey, you need specialization in a single field, although knowing the fundamentals of other fields could also benefit you. If you choose to specialize in backend engineering, here are things you must learn:

1. Learn a Programming Language ๐Ÿ–ฅ๏ธ
When I say learn a programming language, I mean strive to be an expert in that language. You must understand the fundamentals (conditionals, loops, variables, functions). You also need to dive deep into OOP, learn multithreading and concurrency, and master data structures and algorithms to sharpen your problem-solving skills. ๐Ÿ’ก


2. Master Your Chosen Framework ๐Ÿ”ง
Understand the ins and outs of the framework you choose to specialize in. Familiarize yourself with its documentation and stay up to date with any changes introduced. If you learn one programming language and framework really well, you can adapt to new languages and frameworks more easily. ๐ŸŒŸ


3. Understand Databases ๐Ÿ—„๏ธ
Learn at least one relational database and one non-relational database. Familiarize yourself with SQL syntax, understand query optimization, database schema design, and explore advanced concepts. ๐Ÿ“Š


4. Know APIs, Authentication, and Authorization ๐ŸŒ
Gain a strong understanding of how APIs work, how to implement authentication and authorization, and how to write clear and comprehensive API documentation. โœ…


5. Learn DevOps Essentials โš™๏ธ
Master containerization (e.g., Docker), CI/CD pipelines, load balancing, monitoring, cloud services, and deployment best practices. These skills are crucial for efficient backend development. โ˜๏ธ



Don't be afraid to dive into advanced topics. Thatโ€™s the only way you can truly stand out. ๐ŸŒŸ Feel free to drop any concepts I missed in the comments! ๐Ÿ’ฌ
You might start your coding journey for different reasons, such as curiosity, passion, money, or anything else. However, patience is what keeps you going. You might encounter times when you feel overwhelmed by the complexity of a concept and are unsure where to start learning it. You might face a bug that takes an entire day just to figure out why it happened, or you might compare yourself to others ahead of you in their journey and feel like you'll never reach their level of expertise. If you are not patient, cannot persevere with grit, or fail to train your mind to seek solutions instead of making excuses, it will be very difficult to succeed as a developer. Be patient and train your mind to love the struggle. You'll get there slowly but surely.
๐Ÿ”ฅ9
Juggling multiple projects at the same time be like



Source: https://discord.com/channels/1148581179084243054/1152353769145778216/1331371867982004376
Hey guys, is there anyone in here who is skilled with R or SAS programming languages for statistical analysis? If you are skilled with the mentioned languages or if you know someone who is dm me with your experience @abeni_al7. I have a paid task for you.
๐Ÿ‘1
How to debug your code: ๐Ÿ›๐Ÿ’ป

1๏ธโƒฃ Read the error message. ๐Ÿšจ The most important part could be the first, the end, or somewhere near those two. The error message might lead you to the exact place where it all went wrong. The error stack trace shows you what went wrong and then what went wrong because of it... ๐Ÿ”๐Ÿ“œ

2๏ธโƒฃ Look at the source code of the framework you are using. ๐Ÿ–ฅ In VS Code (that's what I use, I can use vim though lol ๐Ÿ˜†), if you use the shortcut Ctrl + Click, it will take you to the source code of whatever imported piece of code you are using. Looking at the source code will allow you to decipher what exactly the framework expects from your code. ๐Ÿงฉ๐Ÿ”Ž

3๏ธโƒฃ Read the official docs for the language or framework you're using. ๐Ÿ“š Obviously not all of it. But the part that talks about the particular feature of it that you're dealing with. You'll understand it deeper along the way. ๐Ÿง โœจ

4๏ธโƒฃ Search for Medium blogs that talk about the issue you're facing. ๐Ÿ“ I've found guidance on implementing features, explanations of why an error occurs, and how to fix it on Medium far too many times. ๐Ÿ› ๐Ÿ”ง

5๏ธโƒฃ Search on StackOverflow. ๐ŸŒ If you are facing an error, somebody else probably already had it before you, and you might get a great answer there. ๐Ÿ†๐Ÿ’ก

6๏ธโƒฃ Search your error on YouTube. ๐ŸŽฅ I usually don't get lucky on YouTube, but there is an Indian YouTuber who is explaining how to solve my exact problem once in a while. ๐Ÿ‡ฎ๐Ÿ‡ณ๐Ÿ‘จโ€๐Ÿ’ป

7๏ธโƒฃ Ask DeepSeek R1 ๐Ÿค– (I would have said ChatGPT if I was writing this a week ago). Read the "thought process" before you read the answer. You might come up with a solution in the middle of reading its deep dive into your problem. Whenever you use AI, read and understand why the solution works before using it. It might seem tempting to just copy and paste, but understanding why the problem occurred and why the solution works is what adds value to your career. ๐Ÿš€๐Ÿ’ผ
โค4
Is there anyone here from AAU that wants to participate in tomorrow's hackaton with me and my team? We are looking for 1 person. No experience needed just an interest to participate
Frectonz
Devtopia Interlude #002 is out. We talk about the tsc-go port in this one. We take a tangent to talk about the history of language compilers being self-hosted. [youtube]
This is the only technical podcast I know of in Ethiopia. I've learnt a lot of things from the 4 videos they released. The technical depth they go into is very satisfying. I recommend it for anyone who is interested in listening to purely technical discourse.
๐Ÿ‘3
Forwarded from Code memo
๐Ÿ“… March 28 memo ๐Ÿ“

๐Ÿ“ Node.js is an open-source and cross-platform JavaScript runtime environment. Node is a non-blocking paradigm, Blocking behavior in JavaScript refers to operations that prevent further execution of code until the current operation completes. For loops and synchronous functions alike are blocking which means other part of the code won't be executed until the block is finished but for Node the norm is Non-blocking like asynchronous functions are non-blocking.

I have a plan to read this page in depth too in the future MDN

โœจ Learned to do simple things such as creating servers, apis, processing files and simple middlewares with node js. I also now know what an event Loop is in JS which I didn't understand for the long time thanks for a youtube link provided in the odin project page.

@code_memo
Code memo
๐Ÿ“… March 28 memo ๐Ÿ“ ๐Ÿ“ Node.js is an open-source and cross-platform JavaScript runtime environment. Node is a non-blocking paradigm, Blocking behavior in JavaScript refers to operations that prevent further execution of code until the current operation completes.โ€ฆ
This guy is a friend of mine and he has created a channel to document his learning journey. Sub to his channel if you're interested. He is learning backend development with express.js planning to dive deep in it
โšก2
Abeni Codes
Photo
Have you ever thought what you would do if you don't have to work for money anymore?
๐Ÿ˜5
Forwarded from Edemy
If I had to learn software engineering from scratch, I would only need 5 books:


0. ๐Ÿ“š Clean Code
โœ๏ธ Robert C. Martin

โ†ณ Practical guidance on writing readable, maintainable code with concrete examples.

1. ๐Ÿ“š The Pragmatic Programmer
โœ๏ธ Andrew Hunt and David Thomas

โ†ณ Timeless advice on approaching software development professionally and effectively.

2. ๐Ÿ“š Designing Data-Intensive Applications
โœ๏ธ Martin Kleppmann

โ†ณ Deep dive into the principles behind reliable, scalable, and maintainable applications.

3. ๐Ÿ“š Design Patterns: Elements of Reusable Object-Oriented Software
โœ๏ธ Erich Gamma et al.

โ†ณ Essential reference for common design patterns that solve recurring problems.

4. ๐Ÿ“š AI engineering
โœ๏ธ Chip Huyen

โ†ณ Learn AI from 0 to how do we put this in production.

@edemy251

Source__ Alexandre Zajac
๐Ÿ‘2
I'm on my longest streak on github right now while learning Kotlin for Android development to supplement my backend development skills
๐Ÿ”ฅ9
Forwarded from Backend Life