Startups are all about constant change and being able to jump on different tasks quick.
This kind of defies one of the founding principles of productivity.
Doing one thing at the time, extensively.
As a full-stack developer in a growing startup, I decided to share here what worked for me, jumping from the product core to creating landing pages and maintaining marketing material (such as websites, landing pages, blogs).
1. Set Front-End Time Slots
Front-end is sometimes about a bunch of non-technical colleagues thinking it is easy to ask for small tweaks all the time.
Spoiler alert? It is (in principle) with a huge disclaimer.
It is easy to get caught in smaller tasks and deliver as they come but I learned the hard way that having some front-end tasks dedicated time helped me be more productive overall.
Bonus Point:
- Learn how to use Figma: you do not need to become a master, but getting to know the tool by simply playing with it and watching a Youtube tutorial (like this one by Kevin Stratvert) will make your life easier.
2. Reasonable Adds-On
We are all familiar with the regular Front-End tech stack (any major framework such as React, Vue, or Angular and Typescript).
What has made my journey a little more enjoyable was having:
- Tailwind CSS or Material UI: These help with styling and allow you to create beautiful designs quickly (but are not usable every time).
- Storybook: Used this to build and document UI components, ensuring reusability.
3. Collaborate Better
Easy to say collaboration helps.
When it comes to practical tools to make the best out of one's journey, here is what I actually do:
- I try to participate in design reviews to catch issues early.
- Use tools like Polipo to render design assets.
- Keep feedback loops short (announced Slack huddles for the win).
4. Don't create work for you
When working on the full length of a product there are ways in which you can work on the back-end to make your future work on the interface actually better.
Some examples:
- Design APIs to be front-end friendly, minimizing transformations.
- Use GraphQL to fetch only the data needed, reducing over-fetching.
- Optimize server responses for speed, especially for critical front-end features.
Final Thoughts
I never particularly liked the definition of front-end development. I think we all should aim at being full-stack engineers with some edges.
The world of work offers countless opportunities not to be productive and we must fight back establishing routines and trying to get the job done.
If you did not read it yet, I recommend Deep Work by Cal Newport and I am planning to tackle his newly published Slow productivity.
Want to spend less time on low-ROI tasks as a Front-End Engineer?
Start here.