Part I of the Series Web Development for Experienced (Non-Web) Software Engineers
Google Differences between Software Engineer and Web Developer, you will get plenty of search results highlighting the differences. This post is specifically for experienced Engineers trying to understand the Web Development Paradigm.
In Engineering, we start with 0 knowledge in the subject matter. We do some study. We practice. We learn the general concepts and while we practice, we gain our specialty. We focus to become an expert. We pivot and expand our knowledge domain, typical adjacent to our experience and expertise. Web Developer is fairly similar. However, there are some minor differences that I think cause significant differences:
- General concept and knowledge are vast to grasp
- Technology and Methodology are work in progress
- Knowledge sharing differences: StackOverflow
Information Overload
For anyone new to web development, it’s amazing how much there is to learn. It’s a Client/Server architecture with multiple competing stacks and supporting technologies, tools, methodologies. Add the complexity of Conway’s law and aggressive history. How much does one need to learn? Where to start? It’s overwhelming!
The basic: HTML, CSS, Javascript on the client side. These are REQUIRED. You can learn the basics them here: https://www.w3schools.com/ . For advanced Javascript, I like this site: https://github.com/getify/You-Dont-Know-JS
Server side depends on the stack and supporting platform/technologies/services.
- LAMP (Linux, Apache, MySQL, PHP)
- Node.js
- Django/Python
- Windows, IIS, MSSQL, ASP.NET CORE/C#
- …
Then, there are frameworks/libraries to build help build client side web application:
- React
- Angular
- Bootstrap
- JQuery
- AJAX
And, endless of web services, and cloud services… So… one does not expect to know all and becomes expert in all. But we should recognize they are all trying to achieve the same thing, which is a website.
Everything is Work In Progress
Best practices today could be the worst way practice tomorrow. That’s the state of web development. There are always new trendy code, framework that some company is adopting. But the downside is that it might not get anywhere or something better came along and the mess just kept building up. That’s why I recommend people to chose a stack that is going to be supported by one of the top tier company such as Google, Microsoft, Facebook. But keep an open mind that things might change and be hungry to learn new things.
KNOWLEDGE SHARING
Web Development knowledge sharing is very active. Quality tutorials are everywhere.
If you have an issue, you can most likely find some answer online. Mind the quality of the answer might not be great. Stackoverflow is your friend.
Also, take consideration of versioning. In typical engineering, we have usually slower churn rate, usually by phases. Web development can happen as fast as 0 day with the adoption of continuous integration and deployment.
1 reply on “Differences Between Engineers and Web Developers In Practice”
Nice post. I learn something totally new and challenging on sites I stumbleupon everyday. It’s always interesting to read through content from other authors and practice a little something from other websites. |