Answer the question
In order to leave comments, you need to log in
Dead end and slow development, a cure?
Good afternoon, colleagues.
I notice that there are unique people who master in a month what I did in a year, somewhere I read that out of 100, only two are worthy of being real programmers.
The training is very slow, no, I understand everything, but I move extremely slowly. That is, while Angular was relevant, he taught, he taught .... he was late. And this is not the first time. And then a young one comes once or twice, and in a month he rolls out a part of the project into production.
I understand that everyone has different inclinations, absolutely, but I don’t want to be the one who is fired as a weak link. How to develop more efficiently? What methods have helped you personally? They say 4 years of experience is a senior, but my friends can barely pull a middle, and I can’t even pull a junior.
What am I doing wrong?
UPD: I realized that I apparently understand everything correctly, and I’m going right, I’m just naive and I believe in seniors for 3-4 years, yes there are those who have a gift for this, but this is a single unit, the rest is work, thank you all for your help!
Answer the question
In order to leave comments, you need to log in
Do you want to quickly download to production? Turn on Vanille mode. Write, in parallel, your project. Cling to one language as the main one and then learn everything in it up and down. Then, as soon as you learn everything, grab the most complex framework and start disassembling from complex to simple. This is my approach.
For visual statistics: I am a doctor, I have an 8-hour working day. Since September 2016 I started learning PHP and JavaScript. From January 1 to January 9, 2017 I am writing a program that helped me write patient histories. Now the program is popular and it is used by the entire staff. Now the project is being rewritten to Symfony 3.
What I needed: time after work, the Internet.
You have to let all the slag float past you. There is no need to invest a lot of time in studying what will change tomorrow. It is better to spend time on fundamental things, the life of which is more than 5-10 years.
Examples:
In short, don't waste your time on syntax, spend it on semantics.
And read less habr. There is less and less useful information, and at the same time, resources like this make people feel inferior because they do not use "this new super-mega framework".
I notice that there are unique people who master in a month what I do in a year
They say 4 years of experience is a senior, but my friends can barely pull a middle, and I can’t even pull a junior.
One and a half millionaire in Russia. Finding someone who knows something about layered architecture or ddd among those who apply for a PHP/Python/Ruby programmer job is an extremely difficult task. Out of 100, 99 seniors will come, 20-25 years old each with the ability to ship spaghetti on the next cool framework. Finding a good full-stack developer is beyond fantasy.
I saw those who roll out into production in a month. Everything works on parole, without tests, without solid, without grasp, without patterns, without architecture in the end.
- How can we make sure your code works as expected?
- Damn, I'll work!
- How does the Event loop work in Javascript?
- What is it?
To begin with, hammer a bolt on all frameworks and learn the language normally. Are you sure that you perfectly understand the Event loop, hoisting, closures, context, prototype and functional inheritance, etc.? When you understand the language, write something in it that is quite voluminous and claims to be extensible (website, library, game). Understand that they wrote complete trash. There is a desire to read something on architecture. They read, rewrote what they had done before. We look. Already better, but still wild trash. And here we understand that the uncles are much smarter than us have already written their own tools that allow us to suffer less and work more productively. We are looking for a framework for our task and rewriting it on it. But already with an understanding of WHY it is for us and approximately HOW it works, and with the realization that this is just a stupid tool to make life easier,
Maybe you can find your niche. For example, I can't solve olympiad problems at speed. I have never taken normal places at programming olympiads. Because everything needs speed. But this does not prevent us from doing large projects where there is time to think over the architecture, write code that can be easily expanded and supplemented.
After all, one wrong architectural decision can complicate the project at times. Just look for your strengths and it probably won't be writing shit code for speed.
It's a mess and chaos in the web right now, new technologies appear in batches and "die". Go to Enterprise there are many projects based on 10-20-year-old technology.
When you already understand that it is useless to teach, you need to understand.
Read the book "Fanatic Programmer" there is a lot of good advice on how to grow.
It's simple: you need to do your own project for the soul, which you will want to do, because it is useful specifically for you, otherwise it will simply not be interesting and there will be no motivation. and pull the skills under one. I answered very thoroughly about this for a long time, in the end I decided to just give a link to this answer: https://toster.ru/answer?answer_id=665948#comments...
What did you want?! That it takes several years to master a more or less complex language. It takes several years to master a more or less complex framework. More or less understand how to write complex business logic (DDD there are all sorts) - it takes several years.
What is different - all good proggers go through this. Only experience, only complex projects, hard work, reading a huge number of books, constant professional development (and if not, the risk of remaining fucking useless at 35 years old). Do you think that over 100K is paid for nothing?
And about the young - the story is familiar to everyone - they come on show off, write garbage on their newfangled angulars, then they fire him or run away himself, and then you wipe bugs after him for several months (because they write shitty, I would say, without understanding at all what do) or rewrite everything. Only team-lead-mudazvon is conducted on such young animals.
P/S I really love Angular itself )))
If I'm "tight" skating, then I don't get into this business. You can reach the level of "not bad", this is the maximum. The effect of throwing peas against the wall)
In any craft, something comes easier to you, something harder.
Probably not yours, in my opinion.
100,500 courses are also to blame:
"Come to us, in 3 months we will teach you to code and you will rake in the loot with a shovel,
it's so easy, my Petka wrote an autopilot of a Lego toy at the age of 13, cut down a bunch of dough and
blah blah blah"
No, not easy . Therefore it is difficult.
Are you sure that at least one branch from this list can be learned in a month?
https://github.com/kamranahmedse/developer-roadmap
Not to mention that if "learning in a month" means learning from scratch, then without a mentor, even three months will not be enough for you for the first technology alone, not to mention the entire list.
Come up with some project for yourself that, at first glance, you cannot do with / at the current level. First you do what you can, then you look for individual solutions on the Internet and, what is important, UNDERSTAND THE PRINCIPLE OF WORK, change it to suit your specific project and insert it. If you find an article or video that explains the material really well, bookmark it. Do not try to remember everything, you will do some interesting projects for you that you are going to do in the future - it will be remembered by itself, but what you don’t need will be forgotten
Only working on complex projects in a team with professionals will allow you to grow. Your own project is, of course, very useful, but it won’t allow you to reach the “new level” because of the many indulgences or assumptions for yourself, starting from the choice of language / technology, for example, to study React, write modal windows for e-shops on it, when everyone is doing this is through bootstrap / jquery, and ending with a huge waste of time on side, "non-core" tasks, such as setting up servers, design, integration with services (notifications, backups, payments)
If you study for several years, then there are 2 options.
1) There really is no predisposition. Here, either continue to butt with yourself and realize that there will be no laurels, but you will grow to an average level (if you suffer for a long time, then something will work out). Either give it up and move in another direction, by the way, you can change not the profession, but the direction (if you are a back-end, try the front, etc.)
2) Do not deceive yourself, and study more diligently. Taking on projects that "frighten", as a rule, they learn only from such projects.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question