I’m a web developer
Posted on March 22nd, 2010 in Miscellaneous | No Comments »
In my last post, I talked about how I was not a programmer. Since that post, I thought about what I really was and looked around to see what would best describe what I do at work. Luckily for me, someone tried to figure out the difference between a computer scientist, a programmer and a developer. I thought his definitions for the programmer and the developer were pretty accurate. Also, the developer definition was much more fitting for me.
They write code. Making it well-factored and clean is important, but other factors often take priority. Math skills are very much optional, but it does help to be aware of common problems and solutions related to the domain they are in. Communication and people skills are paramount. Process and team dynamics are bread and butter skills. They are consummate generalists without any truly deep specializations. They are expert at finding ways around problems and plugging components together to fulfill a set of requirements. In their personal time they are either trying to build the next Facebook, or engage in activities that have nothing to do with programming, developing, or computer science.
That’s pretty much dead on. I’m always thinking about useful new apps, tools, projects that would first and foremost benefit me, but that could probably be useful to a large group of people. I love working in a team where I can help others with my knowledge (and learn from them too).
Since I build web application, I can say that I am a web developer (with a specialization in front-end web development).
What about software engineers?
The post explaining the difference between different programing professions was lacking the software engineer definition, so I’ll take a stab at it.
A software engineer is part developer and part manager. He is taught the ways of programming without ever digging in deep enough to be considered an expert. The software engineer is also taught multiple software development processes which he can then adapt to the situation. He also knows the basics to managing projects which makes him a great candidate for future management positions after he has had first hand experience with software development. A software engineer is a manager in the making.