To get my first job as a software dev, I prepared by doing algorithms (using cracking the coding interview book). You really don't need any other resource, I did every the problem in the book at least 5 times. The most important lesson I learned here is to constantly redo problems you struggle with until you know it like the back of your hands.
In my first job I realized that I like building tools that people use so I focused on learning front end development.
The next job was a front end developer and to prepare I just refreshed my algorithms using the same book and basic JavaScript knowledge. I negotiated hard because I had nothing to lose (the worst case scenario was sticking to my current job) and ended up with 200k total comp.
I recently interviewed for front-end roles and I've noticed a shift from algorithms to practical tasks (building x app). Out of the 9 onsites I did, I don't remember doing any complex algorithms, but instead there were alot of hands-on coding to make sure I can code up challenges on the spot. For front end engineers, I think algorithms is no longer a point of focus. I don't think there are any practice resources that focuses on front end development, but my friend is building https://jsstation.com to address this.
Dropbox, Amazon, Facebook offered separate interview tracks for front-end development and generic software engineering.
I ended up receiving a few offers and I was quite surprised by the numbers. The top 3 are all between 250k - 310k total compensation packages, the lowest base among them was 180k and the highest base was 210k. I'm quite surprised at the big difference between what Glassdoor shows and what my friends and I are making, perhaps someone here could shed some light.
I think you graduated 4 years after me, I hope you find some value here. Good Luck!