Do frontend engineers have any future?
I can see folks looking down on Frontend Engineering, why is it so? Is there a pay gap between frontend and backend.
Do you feel like your work as a frontend engineer is meaningful and impactful enough towards the product you are building?
I feel like in most companies BE work is treated as more important. Most of your performance bottlenecks and production issues would also be related to Backend and hence those who work on it get more visibility.
I feel as an FE all my work is being limited till the feature is being developed and after that you just move to the next one. Kinda feeling bad about it.
Me - a full stack dev who finds both of them to be meaningless. Just like my life.
Quality answer 🥲
Kadwa satya
I have been working in the core frontend for the past 2 years for a fintech product. In many places you'll find api calls being made and then it renders the data on screen. No big deal, it doesn't update in realtime nor has much user interaction.
But as soon as you start building a product that involves a lot of realtime data coming through sockets or need to derive a lot of values and sync states between several screen/components. Difficulty increases as you keep on building. You need efficient updates and responsive ui otherwise you'll lose out on business or get angry customers.
Apart from this you need to ensure your screen loads quickly and show correctly across several screen sizes/orientation, following user preferences also it's accessible. If your page web vitals are not good enough it can impact your web ranking.
This is just a small part of FE. Being able to come up with proper routing/consistent components and abstractions itself is a task.
Backend folks are equally important without a doubt, they have their own issues.
Regarding features as you mentioned, it gets developed and you move on to the next. That's not always the case. Product team might keep on improving or add some other functionality in the same feature which could have a broader impact on overall logic. What if the same components are being rendered upon different screens? It increases complexity.
Yeah but most FE work in startups are just what you mention on your first part of the answer. Its just a api call and render data. And its speed of execution which matters the most so no much thought to interactions, animations and stuff.
Perf mostly comes last. Frameworks already make it a lot faster. Usual bottleneck is BE.
I work in a small startup but what you said about performance is totally false in my case. Here the team is small, and I have around 1+yoe but the PR reviews are so hard here and also first before that your code has to pass through Sonar cloud. The amount of bugs we solve and improvement of the existing UI and the number of tickets QA team gives us is humongous and tbh few days back I redesigned the existing home page and things were not as easy as it seems. Api integration isn't as easy as you said, the level of abstraction we do while using Thunk is good enough for our case. Just to give you an example, we create constants, we register endpoints, we create api call methods, then we create Thunk api call method where we use this service method of API and the constants we created from there we have written our own custom Thunk processing way. After this you get the response. To store the response you need to create a state and maintain it. And also when you are dispatching actions you need to make sure the api calls aren't affecting anything else. Sometimes it makes the lage load slow. So then we need to cache the results and functions using useMemo for calculations and functions using useCallback. Sometimes you need to make another api call in the callback and then you need to redirect to a different page and there you need to get those states and again do a lot of stuff. I know there are modern ways to do this using RTK as well and also using Redux Toolkit which uses immer.js for state updates. But how will you replace an existing system of code. There are tech debts but you already have so much work that you don't have time to revisit those bottlenecks. Things stop working and you'll later find out that the api call was not working and again you need to dig deep down and find why this isn't happening. So there are things which aren't simple and I haven't worked with Sockets which seems even tougher to me after reading his comments. Nothing is simple in tech!
Add Typescript on top of it to make your life living hell. (I know and having been using typescript since Angular 2(7 version) 2016. I am still perfect and more productive without it if we measure development experience and build time across the year. And its only for dev's and not for customers. Still, it has become mandatory in JD's and interviews since 2022. On top of it, TDD has slowly become a norm in US based good companies, expect unit, e2e, A/B testing. FE is deep shit complex lately!
I dont expect to start TS vs JS useless debate. Kindly dont comment on it. 😂😂
I'll still comment. TS isn't there to improve your productivity. It is there for long term management of code where developers come and go. Good luck managing a js codebase written by a thousand developers over 10 years and tell me how many WTF you spit.
TS = free documentation that validates your code strictly so that you don't have write trivial test cases like data type validation.
Think of building interfaces like figma, photoshop or very interactive UIs and then compare it to BE. It becomes equally complex. Even more.
Been in FE for 8 years and I still get intimidated thinking how the hell would one develop a tool like figma that works so flawlessly in browser.
Yes. I agree. A large part is c++ i think. Only some parts use the frontend trio.
Depends the way you see it. If the website animations and performance is slow and ux isnt great.... BE's and the backend can go to hell.
If the website look and feel aint good, no online business can run... no matter how well the engg and business models are in place.
User ll just close that browser tab and never come back!
Yes i agree. Although there are very few such sitesi think. Most products i ever used were well designed on UX front, good usability and perf due to the frameworks. Even those products if we see source code it will be the same api call and render data.
I can see folks looking down on Frontend Engineering, why is it so? Is there a pay gap between frontend and backend.
Hi folks, I am a frontend engineer. A bit of background about me:
Hi Grapevine,
I'm Arnav, Director of Engg at Jio Cinema. I previously exited my startup to Scaler. Some of you may know me from ScalerPod. I've also led engineering teams at Zomato & Target.
Here to chat with you about my journey...
Why is jiocinema so effin horrible to use on Samsung tvs ? Just fix this shit already.
Are you folks enjoying your work? Seems like I am bored with CSS changes I get the whole day. No logic work only making dumb react components.
After 3 yeo of experience in FE i am looking to switch to BE but want to take advice from peeps who have actually done that. If you have any pointers plz suggest me. Thanks in advance.