Raman Ksaitor.eth @ksaitor Started @CryptoJobsList when I was looking for a dev job in crypto… now helping 20k+ people get one too! 👨‍💻 Serial maker. Also @BitcoinFear Jul. 26, 2019 1 min read

After 3 months of intensive refactoring I’m finally launching updated  https://cryptojobslist.com  UI 🎉

What-Why-How Thread 👇

First and foremost, what's in it for users?
- Faster job discovery
- Faster job pages
- Faster, simpler job application

Benefit for companies?
- Happy job applicants => happy companies => more efficient hiring

Many people asked me, why did I move to React?
Let me explain with some history and background 👇

When CJL first launched, I’ve built it with simple server side rendering that was available out of the box in Sails.js

I did not want to set up a complex React base and maintain it, just to validate the idea, so I just went with built it templating of Sails.

For the first year it was perfectly fine — fast to build and ship, reliable for SEO. Works. Good old server-generated HTML.

But as I wanted to add more features, more dynamic elements, issues with server rendered HTML are instantly noticeable. Mainly:

- Hard to reuse UI components, which leads to slow development
- Slow server response
- Hard to do dynamic UI without some frontend framework

So I gradually started transferring pieces of @CryptoJobsList to React.

I’ve build the job submission form over 6 months ago and it is worked well.

Hower moving job pages and job list itself, been took me much longer.

Not because it’s technically hard to do — but because it is *demoralising* to rewrite features that you’ve already built and that are already working.

So in the past month, I’ve managed to find willpower, focus and finally complete the transition! 🎉 🍻

Some of the lessons here:
- Made right decision not to over-optimise day one
- Transitioning to a new stack does not have to be all-or-nothing — current UI is proxied via backend and some pages are still SSRed
- SEO implications are uncertain, but there is @Netlify to prerender

Not everything is fully polished, so if you see areas for improvement, comment below 👇

Thnk youuu

You can follow @ksaitor.


Tip: mention @threader_app on a Twitter thread with the keyword “compile” to get a link to it.

Enjoy Threader? Sign up.

Threader is an independent project created by only two developers. The site gets 500,000+ visits a month and our iOS Twitter client was featured as an App of the Day by Apple. Running this space is expensive and time consuming. If you find Threader useful, please consider supporting us to make it a sustainable project.