visit
Jackson Brown, like some many others, gift us a great phrase respect vocation and passion: _“Find a job you like and you add five days to every week”. I_n my opinion the fact to be developer is a job that we have to do it with vocation, i mean, the inclination or interest that a person feel inside to dedicate a determind way of life or job. The tech world grow every day, so if you hate learning, you are out…
If we have passion for what we do, why not try to be a better professional every day?
Right now, i will show you a list of topics that will transform you in a better professional. Is important to say, that learning all this stuff is not easy, and is not a fast travel, so we are going to need a lot of effort and perseverance.
The last thing I will tell you is that it is not necessary to be an expert in all these subjects, if you are, good for you, but as a developer if you are interested in learning more you will be better. The more knowledge you acquire your preparation will be better.
Mathematics is going to give you a logic necessary to program in a better way. Learn about arithmetic, algebra, discrete mathematics, geometry and statistics.
For me, this is one of the three/four subjects that are fundamental. The more knowledge you have of algorithms and data structures (do not depend on the language) the more efficient you will be when it comes to solving day-to-day problems. Learn about piles, trees, Linked List, Queue, ordering methods, graphs, etc.
This is the other subject that, in my opinion is fundamental. Like as developer is probably that you are going to be in contact with a database manager. Study and learn about SQL and NoSQL databases and when to use each one. This theme will make you grow as a professional in an extraordinary way.
Know how to a computer works is are going to give you a top picture of how and why things work. Learn how the microprocessor works, hierarchy of memories, hard drives, etc.
You must know how your operating system works. Basically the O.S is the most important software, learn how it works to have a better approach when developing. Learn about commands, memory management, etc.
Nowadays everything is connected, therefore knowing about computer networks is fundamental. Learn about protocols such as TCP / IP, FTP, HTTP, how the Internet works, servers etc.
This will give you a better way to develop computer programs, in each language there are different (sometimes not) paradigms and design patterns. Learn about object-oriented programming, functional programming, reactive, SOLID principles, etc.
If you are not a native english speaker, like me (this is a good oportuniy to say sorry if i make any english mistake), know about english is fundamental, especially technical english, because most of the books, documentation, blogs, articles are written in english. Learn to speak, write, read and listen english.
Today is mandatory to know about version control to work as a team. Learn about Git, Github, SCRUM etc.
If you are in a team, humility is fundamental, you can not put yourself above your teammates, because it is a TEAM. And a team needs everyone helping and learning every day.
Other Stuff: ◾️ Ux Design. ◾️ Computer security ◾️ Robotics ◾️ Leave another one.
**Mathematics:**◾️ ◾️ ️◾️ ️ ◾ Algorithms and data structures: ◾️ ◾️ ◾️ ️◾️ ️◾ Databases: ◾️ ◾️ ◾️ ◾️ ◾️ ️◾️ ️◾ Computer architecture: ◾️ ◾️ ️◾ Operating Systems: ◾️ ◾️ ️◾ ◾ Networks: ◾️ ◾️ ️◾ ◾ Paradigms and Design Patterns: ◾️ ◾️ ◾️ ️◾ English: ◾️ ◾️ ️◾ Others: write articles, see english courses, read books, talk with people, etc.Teamwork: ◾️ ◾️ ️◾ ◾️ ◾️ Others: ◾️ ◾ ◾ ◾ ◾ ◾
I must mention a developer that i admire a lot, that gave me the idea to do this article:You have my if you wanna follow me, i will thank you!
Thank you 😊