T
T
tester_toster2017-11-01 19:14:28
Career in IT
tester_toster, 2017-11-01 19:14:28

Is it possible to move further up the career ladder in web development?

Good evening.
Recently, more and more thoughts about changing jobs have arisen, but self-doubt gnaws.
The essence of the problem:
A year and a half ago, I got a job as a test in a web development studio.
There was almost no experience - he knew the essence of php, mysql, css, js, but there was not enough practical knowledge + knowledge of the frameworks / cms used.
In a couple of weeks, I was taught the basics of joomla - pulling the layout, writing small modules. This was more than enough for most of the time. After working for three months, he transferred to a remote location - it was far to travel.
Within 12 months I mastered a lot of new
things: cms:
Opencart - went up and down, I know all the files, how everything happens inside, I wrote additions both through ocmod / vqmod, and just by editing the code. From small edits to complex filters, custom baskets.
DLE - also far and wide, one of the projects with which I worked - had an attendance of 500k people / 1.5-2 million. I almost completely rewrote the views per day, leaving only the admin panel, the template engine, which I try not to use, and the database class.
Joomla - worked the most. Wrote all sorts of different modules, plugins, components. Modified many different components like zoo, jsopping, virtuemart and others. Updated from version 1.5 to 3 along the way changing the code for the desired version.
Wordpress - mediocre, worked with a couple of projects. Stretch a topic, write an extension, a new type of material, a field, etc. In principle, there is nothing complicated, the documentation is huge.
MODx - I worked with one project, I didn't like it, but I don't know well - so I won't say anything.
Framework:
Laravel - wrote 3 projects, 2 of which are spa. Wrote on vue.js, the logic is not simple, something like tenders for Americans. I know the structure of the framework, studied many components for myself, I use form validators, middleware, providers. Extended some system classes with inheritance. The controller basically contains only a call to the model, which clings through di, and a little validation sometimes, if business logic is present. Worked with laravel passport + Zizaco Entrust - for both SPAs there are mobile applications that work via api, just like the frontend.
Other:
- paypal
- robokassa
- Stripe (standard features, express accounts, custom accounts, transaction transfers)
- other small payment aggregators
- sms
PHP gateways:
I know it's not perfect, but enough. I understand classes, inheritance, interfaces, mixins. I can write a simple DI with 100 lines of reflection, in principle, I can write everything, but I can’t write everything with high-quality code, since I don’t have enough experience. I don't know all the patterns, but I know the basic ones. I never have questions - "why doesn't it work?", I can debug and understand the code. Read a lot of code of symfony + laravel components to level up. Now I'm interested in sockets and non-blocking io.
html+css:
I can make anything.
js:
I don't know very well. I calmly use jq and other blanks. Wrote two SPAs on vue.js, but still far from ideal, I also understand any code.
The rest: I write a little in c++, so I understand c code. Recently I started using webpack, I didn’t use less to build projects on vue.js, sass, but I did build it - I understand the principle. I can work with a node - run a demo, write a simple code - it will not be difficult. I know about basic network protocols and how they work. In general, I study new things in my free time.
Cons:
- did not work with the version control system, or rather, it worked, but did not commit itself, only cloned the necessary turnips.
- did not write tests.
To the essence of the conflict, "bells" began and every day they keep growing and growing:
- on dev servers, access is only via ftp, in order to copy a large dump, you need to magic with exec, for a large database, use syplex damper, instead of access via ssh.
- it is normal to correct the code with js (remove div or add styles), when it is just necessary to remove it on the server or correct styles
- leaving garbage in the code and database is normal (old variables, extra pieces of code, fields, tables)
- I have my mentor asked: "I can't understand why the payment is not going through?", look at the exception for weaklings
- send the necessary edits with a screenshot where you need to change the text, do not send the text in a separate message ...
- send access with a screenshot
- ignore backend verification, Tipo is optional
and much more in this spirit.
Writing spa in jquery is fine. Then pass it to me with the phrase - then just change the design. The design has a different functionality, okay - you implement it. Then they ask you for api for applications, but you can’t do it - the project began to be implemented on a sincerely shitty framework, where there is even no autoload ... Just rewrite. Everything revolves around the phrase - well, it's easy to do here, really, chik-chik and in production. All the time phrases - well, it's easy to do here, here are a few edits of "additions" on old projects - you do it all day. You explain about the business logic - they don't want to listen, they threw off the design - do it according to it. Then questions - this is not so, then not so, but everything is as in design. I constantly say - this is not logical, it will not be so convenient for the user, in response: "we conducted testing, it will be convenient for people" - in a month you redo it - "We looked at the metric, do the backend. They don’t want to hear about suitable technologies, it’s hard to explain why you need to do it this way, and not as they want in the company. do the backend. They don’t want to hear about suitable technologies, it’s hard to explain why you need to do it this way, and not as they want in the company.
For several months now, the site has been corrected, in which the css prescribed from the cache hangs in the header. I wrote comments for one site on vue.js, of course I attached the source code. Another person in the company decided to correct it, writes - "I couldn't even, correct you", and he corrected, of course, not the source code, but the compiled file, the position of that person is a senior programmer. Throwing TK from the downloader without looking at it is easy. And all in this spirit.
Thanks to whoever read to the end.
So the question is ripe: Am I exaggerating? Is it worth leaving? Will I be in demand with current knowledge and how much? Or maybe that's how it works in most companies?

Answer the question

In order to leave comments, you need to log in

10 answer(s)
E
Eugene, 2017-11-01
@tester_toster

Judging by your reasoning, you grew out of this company. According to the described skills, you will be a sought-after specialist, because thinking programmers are now dispersing like hot cakes.
From the story it is not clear how you, working in the studio, did not use git in the team? Pull up this knowledge, you will definitely need it. But there is actually nothing complicated and long.
The main thing is to respect and appreciate yourself. If you have already grown out of the company, and it stuffs you with shitty tasks, then do not be afraid to take the plunge. A rolling stone gathers no moss. Good luck.

A
Alexander Trakhimenok, 2017-11-01
@astec

Do not exaggerate, but this is of little interest to anyone.
It’s worth leaving because you have already made this decision, and now just look for confirmation that it is not wrong. No one will give a guarantee, do as the soul asks.
You will be in demand. I think the RFP will also be better, especially if you are ready to move. It’s better not to talk about the fact that you didn’t work with version control systems, but to learn Git and use it a little at least for yourself, or even better, implement it in a company.
It happens differently in different companies. A lot of places are a mess and a lot of places are good. But nowhere is perfect.

A
asd111, 2017-11-02
@asd111

Look for a Laravel + vuejs job from 100k (I hope you don't mind moving to Moscow for that kind of money, because 100k is not the limit). Just learn git - the most necessary things are learned there in a day (init, .gitignore, commit, push, pull, and how to work with branches and resolve conflicts), almost everything can be done in the git through gui.
Forget about CMS. They don't pay for CMS. Evolve towards Laravel + vuejs.

T
tema_sun, 2017-11-01
@tema_sun

Judging by your reasoning, it's time for you to move on. This company has become small for you. By the way, it's better to quickly move out of there, until it sucks.

A
Alexey, 2017-11-01
@AlexMaxTM

Since the question (to leave or not to leave) has already been asked, the answer is unequivocal - to leave. Only first you need to decide where to go, the main thing here is to find something that will be interesting.

S
Sanes, 2017-11-02
@Sanes

Throwing TK from the downloader without looking at it is easy. And all in this spirit.
People earn money. They don't have time for slow dancing. Leave and find someone else.

L
Lone Ice, 2017-11-02
@daemonhk

1. Run from there.
2. About MODx you are in vain, try to get to know him better.
3. With your luggage and CMSs, at least for freelance, at least for an average studio

S
Sanders Smith, 2017-11-02
@Sanders_Smith

Don't exaggerate.
We must leave.
Yes, you will be in demand with current knowledge.
And, yes, this is how the workflow is built in most web studios. Realizing this, I left web development.
If you like web development and the technology stack used, then look for a decent company that develops large web projects and uses cutting-edge technologies. You will have to study a lot, but judging by the story, you have a good learning ability, so everything will work out.

P
Philip Grr, 2017-11-02
@Moon_Lobster

run away from this company! you have enough skills to easily find another job.

P
Puma Thailand, 2017-11-02
@opium

change jobs

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question