I have been working in telecommunication companies for more than 3 years, and no
ID: 650304 • Letter: I
Question
I have been working in telecommunication companies for more than 3 years, and now I want to try to become a web developer. I use C++ for a long time, and it is my most familiar language, and the platform is Unix or Linux.
Because of my programming skills, I tried to apply several positions like C/C++ software engineers which I think require this kind of knowledge.
But I failed for all the positions. A majority of the positions I applied really need was C language skills other than C++. And all need strong knowledge about the data structure and algorithm which is a filed that I am not good at.
After several trials, I realized that there was a problem. What I am good at is at something like C++, Object Orientated design, and the analysis ability, which is a little high level thing. But the positions I applied require C, algorithm which were a little low level.
So is there some positions in web which are suitable for my programming skills? or How many things I need to learn to become a web developer based my programming skills?
Thanks.
Explanation / Answer
Algorithms and data structures are any programmer's bread and butter. If you don't enjoy these, maybe a different occupation is a better choice - if it's the web you're after, you might want to look at something more in the web design or editing / writing area. Otherwise, at least general knowledge of the common algorithms and data structures is pretty much required (you can get by without these, but you'll write lousy code, and I'd hate to have you on my team).
As for practical skills, in order of importance:
HTML and CSS, in depth. You can't do web development without these.
The HTTP protocol. You don't need to know every obscure detail, but learn how the protocol works and what you're supposed to do to comply to it.
At least one server-side web programming language. The most popular ones at the time of writing are, to my knowledge, C# (ASP.NET), PHP, Python, and Java (JSP), but there are more. While you can use C++, I wouldn't recommend it for this task. Seeing that you're coming from a Unix background, PHP or Python would be obvious choices.
Javascript. Today's web is nowhere without client-side scripting, and javascript is the only viable technology to do this (ECMAScript is the same thing, VBscript is as dead as it deserves to be).
SQL: most web applications use SQL as their data back-ends (typically MySQL on *nix, although PostgreSQL is gaining popularity, and IMO it's much nicer).
Web security basics (actually, this one is very very important, but I put it here because it makes sense to dive into this topic after you've learned the above).
At least one javascript library. jQuery seems to be the most popular one; it allows you to whip up fairly complex DOM manipulations and effects, with AJAX and what not, with just a few lines of code.
Some basic web design skills
Basic web server administration (probably Apache if you're on *nix).
On *nix, basic shell scripting
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.