Free Agent Stig Christensen on Front-end development

Any successful business requires a clean, functional, easy to use and attractive website to appeal to customers and clients, and to maintain their interest. Front-end development of a website is crucial on these points. If you’ve got your hands on the wrong type of development, it not only creates an unsightly appearance, but it also drives away traffic which is business. Why? Because it defines business success by improving web performance.

It only takes 0.05 seconds for an average user to form an opinion of a B2B company by looking at their website. Naturally, the programming and layout with design, functionality and navigation experience play an important role on the site. Therefore, Front-end developers are in large demand. Whether that is for a large organization or as a freelancer, the demand is only increasing. It’s a very flexible career, and you can work from anywhere, including home.

As Front-end web development is always evolving and constantly changing, front-enders constantly needs to interact with new tools and learn new skills, keeping them engaged in their career.

At Free Agents™, we had a chat about just that with Stig Christensen. Stig is a front-end developer with a large experience in JS, frameworks such as React and Vue, NodeJs, Electron, WordPress, PHP, CSS/SASS, Webpack, Babel, ES6 and other modern techniques and tools. Stig gave his take on what’s moving in front-end development at the moment, pitfalls in the area and the future of the freelance market.

 

How do you define front-end development?

In broad terms, I usually explain it by saying that the front-ender develops what the user interacts with. What you’re using, seeing and click at. That can be anything from a static HTML site to a full app with all the belonging logistics and animations.

Front-end development can be a little hard to define as a term as the boundaries between back-end and front-end are continuously becoming more and more fluent. There exist many philosophies about how we should separate the terms. Every architecture and project has its own point of intersection and that is most often not a clearly defined line.

 

What skills are important as a good Front-end developer?

The hardest discipline in almost all forms of development is estimation! It’s hard to take into account the unforeseen things and limitations if you have not really been down that road before. So, learn how to be conservative with your estimations. Then you can always make the client happy by finishing before time. 

Your client or colleague might not always be as technically savvy as you are – so it’s a plus if you can act as a connector between the technical and the general. That’s a strength, and it shows that you know your stuff if you can communicate the complicated language everyone understands.

Apart from that, it’s good to think about things as elements. No one wants to receive an invoice saying ’a website, this is the price’. Split up the things when planning, estimating and invoicing – both for yourself and the client. That also correlates with a good overview. There is an enormous number of elements, even on a simple website. A nice overview is essential – both for the code, but also for the project in its whole.

 

Are there any pitfalls within the area?

From a technical viewpoint, there are many. To create fast, responsive sites that look good on all devices and screen-sizes is a time demanding process that calls for a lot of tests and optimization of pictures, fonts and other assets. Google Page Speed Insights can be a hard judge when testing your site – and the client is always interested in ranking better in search engine results.

Another pitfall is, as mentioned earlier, estimation of how long time the assignment takes.

Features that are added to the project towards the ending, but which should have been included in the beginning, is also a common pitfall.

If you do not have a good structuring of the code from the beginning, it will be hard to maintain and develop further later on if the client needs to have more done from you, or if you need to pass on the project to another programmer.

”Bloat” is another pitfall. Should the user be forced to download 2-megabyte JavaScript code as something needs to be fixed in the latest framework, even though it could have just been a static html site?

 

Are there any specific trends within the area right now?

Personally, I am very interested in WebAssembly right now (basically to build a ”native” code in the manner of a program running directly on your computer. But it is on the server, and you can interact with it in the browser at JavaScript. I think we will see a large development in what you can do online because of this technology in the coming years. People have already started converting 3D games and build virtual synthesizers directly in the browser. This is a large step further away from the ”website ”paradigm.

 

What is your dream freelance project?

A thing I really like about the freelance life is the variation. I am not sure if I would be happy if I just had to work on the same project forever. Right now, my dream project would definitely be joining “the bleeding edge” within some areas. Both because I would learn a lot of new stuff, but also because it is something that would help us move forward. Or it could be projects that would do a real change for a lot of people.

 

How do you see the future for the freelance market?

I do not believe that the demand for web-developers will become smaller unless something really radical happens. It is possible that more developers will turn to freelance instead of being stuck in permanent positions – even though that can also have its advantages. I believe we will see more contact patches with other industries such as data science, where some people come from a rather classical mathematical world and others from the programming side.