Categories
Job Descriptions Web Developer

Web Development, programming skills and professions

As the term itself suggests, Web Development is about building (developing) the application from scratch for the web. It is therefore about websites, web pages or anything else that runs on the Internet.

So, delving a little deeper into IT & Tech terminology, web development refers to the development of programming source code, the creation and organization of databases and markup languages, network protocols, web servers and computer security.

To start with, we will take a look at how to create a website and when it is necessary and recommended to contact a web developer. Furthermore, we will talk about the different specializations of web development.

1. How to create a website

Wed development - how to create a website

Today, creating a website is not as difficult as it used to be. It is not necessary to have a technical or computer background. To create a dynamic website, it is sufficient to be able to install a CMS (Content Management System) software such as WordPress or Joomla on a hosting space and that’s it.

Consequently, anyone can put a simple website online themselves and manage it easily with a publication control panel.

Although CMS software is a perfect solution for creating a blog or a small web magazine, CMSs are not suitable for the development of more complex websites.

If the website is the front-end interface of other corporate information systems, it still requires design (web engineering) and programming (web development) skills.

According to the company’s needs, computer language professionals work on all the website’s functionalities. They then propose tailor-made solutions to fulfil their mission in the company.


Also explore the role of Web developer and Robotics Engineer


1.1 How a website works

A website is a set of hypertext documents and multimedia elements (images, videos, etc.) organized in web pages. In other words, the webmaster uploads the document files onto the web space of a server computer (host) connected to the Internet 24 hours a day.

Today, web developers are increasingly in demand. Indeed, the rapid developments in the IT sector and the digital transformation that all companies must manage have led to a strong demand for new programs, websites and applications. No company can do without a web presence, so it will need an IT professional who can structure and manage it in an appropriate and up-to-date form.

When users (client) connect to the host’s address via their browser, the server sends them the requested hypertext document. In this way, users can navigate between documents on remote computers, even on the other side of the world.


Also discover the role of a Web Designer


2. Difference between Internet and Web

Although people use them as synonyms, internet and web are not the same thing. The Internet was born about twenty years before the web. The Internet (network of networks) is the technological infrastructure, while the web (World Wide Web, better known as WWW) is a protocol.

2.1 From web 1.0 to web 2.0

Over the last twenty years, web development has evolved from the first generation to the second ( web 2.0 ). Web 2.0 is the era of social media, social networks and CMSs.

2.2 What is web 3.0?

In the coming years it will further evolve to the third generation ( web 3.0 ) with the spread of intelligent websites with artificial intelligence. It is a technological revolution that has already begun. Just think of chatbots, online virtual assistants and the recent improvements in the use of the Internet.

Another evolving trend is RPA (Robotic Process Automation) that promotes productivity gains through the automation of business processes.


Also explore the role of RPA Consultant, highly sought-after profile in today’s business world, particularly in digital services companies.


2.3 Responsive and mobile websites

Web development is no longer just about the PC platform, but multiplatform, because users access the web with different devices, including mobile (e.g. tablets, smartphones, consoles).
Therefore, it is necessary to develop a responsive website that automatically adapts the layout to the device used by the user.

As mobile technology is growing exponentially, so are IT professions related to app development. The role of the Android Developer is to develop applications for all devices that run on this mobile operating system.


Also explore the skills needed to position yourself for the booming job role of Android Developer.


3 Frontend & Backend Web Development

In addition, let’s delve a little deeper into the web development field and see how different IT specialized professionals work to develop a website for the internet.

There are two classifications for the Web Development:

  • Frontend Development
  • Backend Development

Frontend Development refers to the part of a website that the user interacts directly. For this reason developers call it the ‘client side’ of the application.

Backend Development is the server side of a website (the part of the website that users cannot see and interact). The portion of software that does not come in direct contact with the users and where developers store and arrange data.


Also read our article about Mobile Application Security Development Cheat Sheet


3.1 Who is the Front End Developer

Web development frontend

The front end developer is the IT professional figure who is responsible for creating the graphical interface of a website or web portal, inserting the elements in the page, styling them (colours / fonts) and animating them.

Furthermore, in the modern web, the front end developer is also responsible for:

  • interacting with the back-end (to which it sends and from which it receives information to be displayed within the web page);
  • developing the logic of what happens in the interface.

What follow is a roadmap with a brief description of the languages and tools involved in the development of the front end.

  • HTML stands for HyperText Markup Language. It is used to design the front end of web pages using markup language. It acts as a skeleton for a website, as it is used to make the structure of a website.
  • CSS (Cascading Style Sheets) affectionately called CSS, is a language designed simply to simplify the process of making web pages presentable. It is used to style our website.
  • JavaScript is a scripting language used to provide dynamic behaviour to our website.
  • Bootstrap is a collection of free and open-source tools for creating responsive websites and web applications. It is the most popular CSS framework for developing responsive and mobile-first websites. Nowadays, websites are perfect for all browsers (IE, Firefox and Chrome) and all screen sizes (Desktops, Tablets, Phablets and Phones).

With the appearance of new frameworks, the professions around web development are more and more specific and a large number of professionals specialize in a particular technology. Among the different possible specializations is the front-end developer AngularJS.


Also, learn more about AngularJS Developer skills


3.2 Who is the Back End Developer

Web development backend

On the other hand, the back end developer deals with the structure of a website or web application. Back-end developers take also care of the functioning of the site and the management of the data they need to process.

Therefore it is important is to know the basic functioning of most languages and to choose one according to its particularities. Rather than talking about languages, let’s talk about the tools that developers use to implement the functionalities of a site.

As before, here is a roadmap of the back-end development tools.

  • PHP is a server-side scripting language designed specifically for web development.
  • Java is one of the most popular and widely used programming language. It is highly scalable.
  • Python is a programming language that lets you work quickly and integrate systems more efficiently.
  • Node.js is an open source and cross-platform runtime environment for executing JavaScript code outside a browser.
  • Back End Frameworks are: Express, Django, Rails, Laravel, Spring, etc

C is a general-purpose language from the 70s, and it is still in use in systems programming and robotics. C++ was born in the 1980s. It is the language of choice for those looking for performance, as it can execute complex code very fast. It is used for the design of mobile applications, the programming of operating systems or video games. Moreover, in the creation of certain military programs.


Want to know more about the role of C/C++ Developer?


3.3 Back-End programmer skills

Web development back-end programmer skills

Also read our Back-End Developer detailed job description

The skills of the backend programmer are:

  • Back-end languages (PHP, Python, Java, C#, .Net etc.);
  • Databases, where developers store the data they need to manage. The types of database is versatile and adapt to the needs of the system;
  • Server, it is important for a backend developer to be able to take care of the online appearance of the site and its maintenance.

There are many specialties and languages in the field of web development, including Swift, Node.js, React.js or Ruby.
Ruby is a free object-oriented and multi-paradigm programming language that is easy to understand and pleasant to use.


Also discover the role of the Ruby developer.


4. What the Full Stack Developer does

web development full stack

What characterizes the full stack developer is the ability to develop both the front end and the back end of a website. Therefore, the knowledge of the full stack developer includes everything that characterizes the two types of developers we have seen above.

An IT professional capable of dealing with the structure of web pages, their styling, animations, creating data structures, designing databases and implementing site functionality. Full Stack developers are familiar with all languages: HTML, CSS, JavaScript, PHP, Python, etc.

Despite this vast knowledge, it is very difficult for such professionals to develop a website completely on their own. In fact, their task is mainly to collaborate with front and back end developers and support them in the realization of particular functionalities.

5. Programming languages for creating a website

As we have seen in the different specializations of web development, a programming language is a computer language used by programmers to communicate with computers. It is therefore a set of instructions written in a specific language to perform a specific task.

In conclusion, this is a list of the most widely programming languages used by the industries :

  • HTML language
  • PHP language
  • ASP language
  • Javascript language
  • Java language
  • Python language
  • CSS style sheets
  • C language
  • C++ language
  • C# language
  • R language
  • Go language
  • Ruby language
  • Swift

The IT professional that translate a graphic language into a computer language is the HTML integrator. By assembling the different elements of a website, the HTML integrator makes sure that they are aligned with the desired aesthetic and maintain a practical design.


Also delve deeper into the role of the HTML integrator


Some languages are gaining importance with the evolution of the semantic web, including: Open Graph Markup. Very useful to explain the content’s context of a page and gain control of the snippets.

6. Web Development and Cybersecurity Best Practices

IT professionals involved in Web Development need to have a good understanding of the importance of digital hygiene and web safety. In order to avoid common website security attacks, it is crucial to follow the highest cybersecurity standards across the development cycle.

Some cybersecurity good practices to put in place are as follows:

  • Ensure that the development team has attended cybersecurity training.
  • Set up a web application firewall (WAF).
  • Use parameterized statements in SQL tests.
  • Keep all security platforms and applications up to date.
  • Partition user data away from API file systems.

These good cybersecurity practices will help reduce human error (which contributes to an estimated 85% of data breaches). They will also increase the quality of applications.

Making cybersecurity a priority throughout every development cycle is therefore necessary to to battle the flood of digital attacks that threaten the modern web.


Find your next 
web developer job

Categories
About us Featured IT Consultants Podcast Interviews Tips for your daily life as a freelancer

How To Code Well: Taking Breaks and Other Pieces of Timeless Career Advice

Peter Fisher; freelance web developer and host of the popular “How To Code Well” podcast; discusses why he started teaching coding and some of the best career advice he has given.

🔊 Subscribe to the podcast


How to code well

How did you get into web development?

I never actually wanted to be a programmer. I actually started off from an arts background. So I did a lot of graphics design and a lot of 3D animation. We did a lot of flash animation and action script coding, so the coding came alongside the multimedia stuff.

When I was at school, I was building small little websites for myself and friends just to post images on. And I found it interesting that one could build something with really small feedback loops. All you had to do was write some HTML code and refresh the page and you had something.

And then when I got my first job in a web development agency, I discovered very quickly that I wasn’t actually a graphics designer as more of a coder. So, I was able to transfer my passion for design to a passion for designing and architecture.

You are the host and teacher of How To Code Well. A podcast and learning hub around web development and pursuing a web developer career. How did this adventure start?

I never started How To Cope Well with the intention of building a business from it or being a creator. It was a purely accidental thing that I got into. I always started blogging when I started learning because that was my way of keeping note. But I was writing to myself rather than to others.

After I finished university, I was in this ocean of developers who’ve just come out of university, and they were all looking for the same jobs. I was speaking to a lot of recruitment agents, and one of them, off the cuff, said “I wish there was a way I could show our clients how well you can code.” This was like 2006-2007, so YouTube was just coming out. And I thought: “You know, that’s something people is starting to use more, so I will video myself doing some code.” It was a very selfish decision. It was never intended to teach anyone how to code, it was just to show how I coded, so I could have called it How Well I Code rather than How To Code Well.

But then you decided to focus on helping others. What changed?

At first, I did about four videos and posted the links up onto my CV, but I very much doubted that anybody would actually see those videos from a job perspective. So, I forgot about it for a few years and didn’t bother logging back into YouTube.

Then one of my family members wanted to post or share a video for other family members. And I just thought “Oh yeah, I’ve got this YouTube account.” So, I logged in and, after several years of it being dormant, I noticed that there was a ton of comments and questions and feedback which were all very positive. I thought this was something I could run with, and it went from the very selfish decision of promoting myself to helping people out. People on YouTube were asking if I knew how to do other things, how to use other programming languages, where the next part of the course was. The funny thing is that I never thought it was a course when I did it. The driving force of How To Code Well is its community.

What was the most challenging part of starting to produce educational content on a regular basis?

I was a junior dev working a full-time job with freelance work on the side, and I was now teaching people to code, so time was and is a thing that is against me.

I’ve got a very strict rule of not doing it during working hours, so it’s evenings and weekends, and over several years I’ve managed to keep that going. But there’s a lot of sacrifices one has to make. For instance, if I live code on YouTube on Tuesdays after work, my working day is prolonged, and my downtime is shorter. If I live code on Twitch on Sundays, my Sunday afternoons are out of the water. And there’s a lot of preparation that you have to do before you do that. You need to think about what it is that you’re going to code and talk about.

What about impostor syndrome. Do you experience it yourself? How do you address it?

Impostor syndrome is something that is definitely real, and with the podcast that came through accident as well. I started doing long-form content where I was touching upon subjects that I didn’t know much about. It got to a point where I was getting to the limits of my knowledge, and I just decided to bring people on the show to learn from them. It’s always a learning journey, always knowing where my limitations are.

With every course I build, I think that I’ve done the wrong thing, if I’ve said the wrong technical thing. You know, if I’ve pronounced an acronym wrong. You’re constantly doubting yourself. It does get easier because you get used to that feeling and you can have a little word with yourself and say “It’s fine. It’s okay, you can publish it.”

You’ll never truly know how the audience is going to react until you publish it. So, every doubt that you’ve got in your mind is just your doubts. It’s not the doubts of others. I think that’s how I get through it.

Speaking to people on the podcast who know about the subject matter, I do come away feeling like I know nothing. I know what they’ve said because I’ve understood what they said, but it just makes me aware of how little I know of web development, which is another reason why web development is so good, because there is so much to know and so much to learn, it’s endless. You’ll never learn everything.

Join our community and find your next job in IT

In your experience, what makes a good web developer versus a great one?

From a technical standpoint, a good web developer knows the syntax and the processes. But a great developer understands the technical consequences of those processes and decisions, and they can lean upon past experiences.

Connect by Mindquest Newsletter

Also, a great developer is highly professional. They know when to say no and they have justifications of why they’re going to say no. They have testing, they know how long things are going to take, they have some experience behind what they’re doing. They’ve seen it from inception to deployment, and they’ve gone through the whole bug fixing cycle. But really, I think what boils it down is experience. You can’t just learn to be a great developer, you must embrace it and experience it.

Based on what you have seen through your courses, what are most developers struggling with these days?

Not understanding core programming concepts is something that I see a lot, so knowing the framework but not understanding the core principles of the programming language behind that. Learning the concepts of programming is a transferable skill. I’m not just talking about learning JavaScript or learning PHP or Python. It’s learning the operators, the logical flows, learning what a function is versus what a class is. All of those things you can take with you to the next programming language.

What I see a lot is people diving into frameworks and then getting stuck when they move to another position or another job, or when that framework changes. They are comfortable in that world, but they’re not comfortable in the world outside of that framework.

What’s the best web developer career advice you have given?

First of all

Take breaks. Take more breaks than you think you need to. Your brain works offline, so even if you’re not physically at your machine, you’re thinking about the work. I think about the work when I wake up and when I go to bed. I never switch off in terms of thinking about the bugs that I need to fix or the logical flows, but because I’m not staring at a screen, I’m not getting stressed about it. I’m processing this information in my brain in the background. And, when you come back to the code, it’s easier to identify the issue that you are in.

The second one

The second one is to keep asking questions. Web development is super hard and it’s going to get harder. You think you know it now, but, in two years’ time, you’ll know two years’ worth of it, and then you’ll discover another two years that you don’t know. There’s more stuff in web development that I don’t know than there is that I do know, and I’ve been in it for a long, long time. Don’t beat yourself up and if you don’t understand what you’re trying to achieve, then ask someone. And, if you don’t understand what that person is saying, ask someone else, because perhaps that person hasn’t talked about the answer in a way that you can absorb. Maybe you are more of a visual learner. Maybe they can show you on a whiteboard or take you through the process. Throwing acronyms at someone isn’t a very useful thing, is it?

Lastly

Lastly, technology comes and goes. At university, I studied visual basic and action script. Well, action script is for Flash. Flash is never used. And visual basic, I just wouldn’t even know. I did well in that course, but I’ve never used it. What I’m trying to say is that technology comes and goes, and whatever you learn now probably won’t be the thing that you will be learning in 10 years’ time or doing in 10 years’ time. So, what you need to do is accept that and embrace change, but don’t embrace change every five minutes.

And the only thing would add is to just enjoy it. Don’t get too stressed with it all. It’s a very challenging thing, and I find that, the more I get stressed, the more I dislike it. So, once you find that you’re actually getting stressed and frustrated with something, take a breather, take a couple of hours. The code will still be there tomorrow, so take an evening off.


Check out more of our interviews from our podcast episodes.


How To Code Well is a video podcast which is live on YouTube every Thursday at 20:00 BST. The audio version is released every Friday and is a week behind the live show. You can find it on iTunes, Spotify and most other podcast platforms.

You can follow How To Code Well through its website, on YouTube (Live every Tuesday @ 17:30 BST and Thursday @ 20:00 BST for the podcast) and on Twitch (live every Sunday @ 14:30 BST).

Categories
About us Featured Podcast Interviews

How to Grow as a Front-End Developer: Soft Skills and Keeping Things Simple

How does one grow as a front-end developer? We chat with Vasilika Klimova, senior front-end developer at Avaloq and founder of the SkillUp School in Luxembourg, about why soft skills and not over-engineering are key to advancing as a front-end dev and in your web developer carer.


🔊 Subscribe to the podcast


How to grow as a front-end developer

Why did you decide to go into web development? What’s your web developer career story?

Actually, web development wasn’t my first choice at all. I have been playing video games since I was three years old, and, at first, my idea was to become a game developer. I studied C and C++ at university. You can get into this industry through OpenGL and all this stuff but, in Tver, my city of origin in Russia, we didn’t have any jobs for students in this area. So, I found some web development vacancies and decided to try it, and by the fourth year of university I got my first job as a web developer as a Webmaster. So, I started from scratch.  

After working there for several years, I finished my university degree and moved Moscow. Then I had to decide if I wanted to go for back-end or front-end, as before I was full-stack. I was doing server code, business logic, all requests to the servers and database stuff, but also user interface. I did all of it. In Moscow there are bigger companies, and these usually have different web development teams, teams for front-end and teams for back-end. So, at this point I needed to decide: do I go as a back-end PHP developer, or as a JavaScript front-end developer? And I went for front-end because I’m a visual person. I need to see what I’m doing, and, when you work with a server, you usually look at the terminal and you see just code and not a lot of interfaces.

And what came next? You now live in Luxembourg. Why the change? What are you up to these days?

I’m actually in Luxembourg because of my previous job. I was a Front-End Team Lead at Artec 3D, a company that has offices in Moscow, Luxembourg, China and California, doing user interfaces and 3D-related tasks. After five years, I decided to switch and was approached by Avaloq’s HR department. They do banking software; it’s quite common to work in the banking industry in Luxembourg.

Avaloq is a much bigger company, and banking quite a regulated industry. Did you notice any differences as a front-end dev?

So, I went from a 200-people company to a 2,500 thousand one with 30 offices around the world. And some processes are not as fast.

Before, when I needed to ask someone within the company for something, I just went directly to them and asked them. But Avaloq has around 800 people at its main office in Switzerland. If you need some information, there are a lot of different teams, and you really need to investigate. For example, sometimes you are working on a project, and you need to find the people who wrote the code in the first place. And often, the only way to know who did this code is to look at who committed it. Coders and managers change, and the only way to find the author of the code is through the commit.

Join our community and find your next job in IT

And besides your job, you also work on some web projects, do consulting and give private lessons for adults and children. You are also the founder of SkillUp School, a school that teaches technical skills and how to advance your front-end web developer career. Tell us a bit more.

Yes. I started being a teacher and mentor for front-end development in 2015. I taught at schools in Russia, both online and offline. And after I had settled in Luxembourg and finally had some time in my hands, I decided to create SkillUp School, as I hadn’t seen that many schools like this in the country.

What we give to our students is this absolutely modern way of looking at front-end technologies, because as professional front-end developers, we are using them every day. We started in 2019. We don’t have too many students, and our main idea is to be very flexible for our students. People who want to change their career usually already have a job and not that much time to invest in their development. We only have two or three teams per year, so not big groups, and we are very flexible. It helps us take an individual approach to each student, and I often become even friends with them. After the course, I keep helping them grow and with any questions they have.

In your experience, what makes a good vs. a great web developer?

I think I started to think more about this when I became a team leader. Good developers can think from a technical standpoint, but a great developer, in addition to the technical aspect, knows how to take more of a business perspective. The main idea behind our job is to deliver something that makes our clients happy. You need to think about the business requirements, why you have these requirements, if there may be a more efficient way to create a feature that meets them and not overengineer. You need to ask yourself “Why?” several times.

Connect by Mindquest Newsletter

I know some genius developers, but sometimes they end up over-engineering because they want to make something ideal, something perfect. But the business doesn’t need that. You need something now, for this and for that purpose. And you always need to keep timing in mind. If development takes more time, then you can run into problems. It’s more of the developer’s time, which results in more money. Don’t over-engineer. Relax and just keep it simple.

As a senior developer, how can more junior specialists grow as front-end developers?

To work on their soft skills, on how to learn, how to behave, work in teams, etc. If one day you’d like to become a team leader, it’s important to work on your team skills, on how to negotiate with web designers. Often developers have issues with designers because we materialise their design and they are not happy with what we created. You really need to have a grasp of some psychology basics for this.

What do you enjoy doing in your free time?

I like scuba diving. I already have more than 100 dives on my back and am a rescue diver, so I could rescue someone from the water, I hope. It’s so calming and beautiful under the surface. But I don’t have enough money to do it too many times a year. Usually maximum twice per year, unfortunately. Covid-19 has made it particularly hard too.

I also like playing board games and having a nice time with friends. I still play computer and video games sometimes. Not to compete, but it’s just something that helps me relax. I am partial to games with and interesting and breath-taking plot.

Your favourite video game?

Mass Effect, the first and third ones.


Check out more of our interviews from our podcast episodes.


For more tips on how to advance your web developer career, make sure to check Vasilika’s website and follow her on Twitter, GitHub, and LinkedIn.