What I Learned by Transitioning from Backend to Frontend Development
How I switched from building products for frontend developers to building products for users.
Jan 14 ·7min read
Transitioning from Back-End to Front-End development is not that easy. I got used to the structure of back-end stuff where you usually build the data structures, writing tests like Test-Driven Development, using persistence layers and repository, database tables, and creating API endpoints for Front-End consumption.
The list is endless and Back-End has its share of complexity so back then I said I don’t have time to learn the inner workings of Front-End development.
If anything, I got myself tied to mostly back-end until I was forced to transition and lean towards Front-End so I can code the best product with great UI interactions without relying too much on Front-End frameworks and black-boxes some framework provides for me to do the heavy lifting and create great apps.
To date, these are my experiences while I transition from Back-End to Front-End developer:
It’s all about User Interface and User Experience
In back-end, what you worry mostly were your data structures, database structure and performance, code architecture, services, and building robust APIs that developers can understand for consuming them in Front-End.
In Front-End it’s very different. You need to care about the User-Interface and how your users interact with your app then measure User-Experience quantitatively. There are times you need to design the User-Experience yourself and improve the flow of the app that you’re making.
What I like about Front-End development is you directly tackle customer needs and care about User Experience they’re experiencing. So I would say the approach in Front-End is quite different because it’s customer-centric and it’s all about how you would make the customer comfortable in using the app that you’re working on than say, tackling data structures.
It makes you think of “UI-first” and how your app flows when starting your project
When I was starting some personal projects to improve my Front-End skills, it obviously improves my thinking when it comes to how the UI works and flows when user click some buttons and interact with some UI components.
Back in my Back-End days, I cannot imagine how the user would interact and improve the user flow as I was mostly concerned only with CRUD operations as well as how the app would save the data to database, including the most critical and sensitive information such as formula, credit card info, etc. So you could say that I really suck when it comes to UI part.
When I transitioned to Front-End, things were different. Now I was thinking of how the user interacts and use our app first whether they’re gonna like the experience or not. Then I would design an appropriate back-end structure and database based on the UI or mockups being presented.
It lets you think of how to improve UI reusability
Ever since the advent of Front-End frameworks such as React, we now think and arrange our UI in terms of “components” that can be reused across different pages and this is a good thing. Gone are the days of reinventing the wheel on how to reuse the UI components yourself. It is now being standardized.
With that said, transitioning to Front-End made me think of UI reusability and improved my decision-making in choosing the right Front-End framework that suits my needs and project scope whether it’s React, Vue, or Angular.
To share your UI components across different projects and teams, I advise you to take a look at what Bit’s tooling can offer you.
Example: UI components isolated using Bit and shared on bit.dev
You want to sketch your own mockups for app
Learning to sketch mockups for your ideas may not be related to Front-End skills itself, but it definitely improve my visuals and ability mock my own design to code it in Front-End.
Mockups are a different skill from Front-End but because I was excited to code Front-End from mockups and designs of others, it made me excited to do my own mockup as well and code it using Front-End technologies I’ve learned.
It’s all about Browser-side performance and client-side optimizations
Not only that you have to care about User-Interface but also in client-side or browser performance. This is important because users are going to interact in their browsers from time to time and your Front-End code is what users interact with.
This made me think that I have to amp up the browser performance whether it’s using caching strategies such as localStorage, optimizing JavaScript compression, bundling and transpiling through the use of webpack, or whether to use dynamic import in scripts.
I realized that optimizations doesn’t only come from Back-End but also to Front-End to give users a seamless experience in using the web app.
You learn how to build Responsive Web Pages
One of the headaches and arguably the challenge of Front-End development is to build Responsive Web Pages. You’ll have to make sure that your UI is responsive enough across various devices whether they’re using desktop computers, tablets or smartphones.
This has been my headache and challenge at first when I was still starting to learn the ropes of Front-End development until I get the hang of it. For the record, at first glance it seems that building responsive pages were easy but I didn’t realized I was wrong all along.
Of course if you’re going to rely on Front-End frameworks this headache is being taken away but we don’t want to rely too much on Frameworks and do the dirty work ourselves to learn how Front-End development really works from the ground up.
You learn how to look at SEO as well
SEO is the driving force behind the page rankings of your app so it’s very important that you learn it as well.
SEO is well used in Front-End app that you’re making and you’re helping your clients or your app to rank up high so potential users can see it and use it right away.
Because of learning Front-End was I able to determine that SEO is also an important skill to have and it can even increase sales for your clients or your app itself.
You learn to be good at CSS
CSS is a major part of doing Front-End development. You won’t survive without harnessing your CSS skills and don’t know how to align your UI components using CSS.
At first this was very challenging for me. I don’t have a keen eye for design nor know the proper way to align a UI component to my liking. But as I learn and learn Front-End development and get good at CSS, this has become a second nature to me and I no longer struggle.
So, by transitioning to Front-End development I learned to be good at CSS.
You learn not to depend too much on Front-End frameworks
I have to admit that as someone like me who are used to do Back-End work, I rely mostly on Front-End frameworks just to get things done and ship products to work for others.
When I was working at a startup back then and only equipped with Back-End skills at the time, I constantly rely on Front-End UI libraries and frameworks to do dropdowns, sidebars, but things started to become complicated very easily and unmaintainable for Front-End code because every single bit of codebase relies on Front-End libraries.
Transitioning to become a full-time Front-End developer gave me freedom because you were not tied to using frameworks just to make your Front-End UIs pretty and have fluid interaction. If anything, you’re free to do how your Front-End is going to align and animate without too much of dependence on frameworks.
You want to be a designer
This is funny because when I transitioned from Back-End to Front-End, I wanted to learn how to design myself. Like, designing everything from scratch and code it using my Front-End skillsets I harnessed over the past years. Then I have this idea of learning how to do Adobe Photoshop which is of course takes a couple of months to harness your skills on it.
But definitely, doing Front-End work made me more imaginative and made me excited to learn about design as well!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
超级连接者:破解新互联时代的成功密码
伊桑•祖克曼(ETHAN ZUCKERMAN) / 林玮、张晨 / 浙江人民出版社 / 2018-8-1 / CNY 72.90
● 我们生活在一个互联互通的世界,我们需要辩证地看待某些事件,发现隐藏在背后的真相。着眼当下,看清彼此之间的联系,而非凭空幻想未来世界联系之紧密。数字世界主义要求我们承担起责任,让隐藏的联系变成现实。 ● 我们对世界的看法是局限的、不完整的、带有偏见的。如果我们想要改变从这个广阔的世界所获取的信息,我们需要做出结构性的改变。 ● 建立联系是一种新的力量。无论是在国家层面、企业层面还是个......一起来看看 《超级连接者:破解新互联时代的成功密码》 这本书的介绍吧!
Base64 编码/解码
Base64 编码/解码
XML、JSON 在线转换
在线XML、JSON转换工具