Skip to content

Instantly share code, notes, and snippets.

@swapagarwal

swapagarwal/good-project.md Secret

Last active Jun 13, 2021
Embed
What would you like to do?

What counts as a good project at roc8.careers?

This is a comprehensive document to help you understand what a good project looks like, in the context of getting accepted into roc8.careers.

Before talking about the anatomy of a good project, let's see what does not qualify as good and clear a few things upfront.

What does not qualify as a good project?

  • A static website, anything with fixed content which displays the same information to every visitor. e.g. Your portfolio website, a business landing page, one-page website, one-page game, etc.

Here are some rules of thumb you can use to determine whether your project qualifies or not:

  1. Did it take you less than 20 hours to build? If yes, it's probably not a good project.
  2. Can website builders like Wix or Webflow be used to replicate your project? If yes, it's probably not a good project.

Understand that you'll be interviewing for a web "app" developer and not a web "site" developer; don't get confused between the two. We don't have anything against building websites per se, but you need to build a webapp to get accepted into roc8.careers.

What are some examples of web apps?

Google Maps, Microsoft Teams, Outlook Mail, Zomato, Flipkart, etc. HRs of these companies are looking for web dev talent frantically. There's above-average money, and a great career in becoming a webapp developer.

With that out of the way, let's address some frequently asked questions.

Is cloning okay?

Cloning is allowed. Feel free to add your twist: Build a Tinder for books, and name it Binder. Build Facebook for non-profits and volunteers. Build Instagram for quotes only.

What are we not evaluating you on?

  • You don't need to have revolutionary ideas. We have Product Managers for that.
  • You don't need to have a great design sense. We have Product Designers for that.

The above things are good-to-have, i.e. they certainly add value but it's not expected from you to have these skills.

What are we evaluating you on?

You'll be working in a team where you are bringing your technical expertise to the table. Complexity in your webapps is what we'll be evaluating you on.

Can you give me ideas of what would qualify?

Now we are talking. Here are some examples that would qualify:

  • Social media application (Twitter, Facebook, etc.)
  • E-commerce application (Amazon, Flipkart, etc.)
  • Media player (Spotify)
  • Productivity app (Trello, Asana, Evernote, etc.)
  • Messaging app (WhatsApp)
  • Booking app (MakeMyTrip)

Whoa! Wait. Wouldn't every project take a lot of time then?

Yes, it takes time and commitment to make good projects. The reason why software salaries are good is there's a shortage of supply of good developers. Most of you reading this wouldn't do it. If you do it, we'd be happy to elevate you into a good full-time job.

Glad you're reading further. Let's go deeper into a good project.

What features should I aim for?

For any app, you can classify a feature into core (without which the app cannot function) and auxiliary (which helps in the core function). Let's take the example of an e-commerce app. The primary goal of the app is to place an order. Here are some features along with their categorization:

  • Product Listing - This is a core feature. You cannot place an order without seeing the list of products.
  • Address Input - This is again a core feature. Without your address, the order can't be shipped.
  • Checkout Flow - This is definitely a core feature.
  • Wishlist - Now this is an auxiliary feature. If you can't add a product to wishlist, it doesn't hamper your ability to place an order.

Your app should contain all the core features.

Start by writing the goal of your app beforehand. That will make it easier for you to decide whether a feature is core or auxiliary.

Here are some examples of goals:

  • Social media application - Share what's on your mind and see what others are doing
  • Media player - Play a song/video seamlessly
  • Productivity app - Add to-do items, assign deadlines, get a sorted view of everything that needs to be done
  • Messaging app - Able to chat with someone, i.e. messages should be sent and delivered very fast
  • Booking app - Find a good deal (search by your location, add filters, book a trip)

What technical features should I showcase?

Okay, let's talk in quantifiable terms now. Your app should:

  1. Be a Single Page Application (SPA)
    If you haven't heard about SPA yet, don't worry. Now's a good time to read about what it is. In short, your web app has faster transitions compared to loading entire new pages.

  2. Have multiple routes

  3. Have more than 3 core features

  4. Talk to a backend

  5. Be deployed in production mode

  6. Have all CRUD (Create, Read, Update, Delete) operations for core features

Additionally,

  1. At least two projects should have some concept of user management (signup, login, forgot password, personalization)

  2. At least two projects should use some kind of database or datastore.

Some good-to-have features which will fetch you brownie points are responsiveness (i.e. a good looking and usable mobile view), having meta tags for link previews, dark mode, etc.

Should I showcase variety?

Definitely! Think about it. The aim is to impress someone enough that they hire you, right? Don't build 5 e-commerce apps then. Show that you can do different things.

Here are some examples to show variety (pick any 5):

  • A React app
  • A vanilla JS app (this will help you in interviews as well)
  • A React app with offline capabilities i.e. PWA
  • A Chrome / VS Code / Firefox plugin
  • A React Native app
  • A npm package published with tests, docs, and versioning
  • A REST / GraphQL API

Note that this is not a comprehensive list - your project does not need to fall into one of the above examples. If you can showcase variety, our hiring partners are ready to take fast-track interviews.

Are full-stack apps required?

No, but make sure you're consuming APIs in your app to make it dynamic. Feel free to use fake APIs or backend as a service (like Firebase, Hasura, Amplify, etc.).

Can I make a backend project?

Yes, you can. But only one or two. Make sure you document your APIs, follow REST / GraphQL best practices, add tests, and have versioning in place.

Where can I find some inspiration?

Here are some places you can browse for ideas:

  1. Play Store, App Store
  2. Firefox Addons Store, Chrome Plugin Store
  3. Product Hunt, Show Hacker News
  4. /r/AppIdeas, /r/SomebodyMakeThis
  5. Dribbble, Behance

TL;DR

Here's a quick summary:

  1. The overall goal of your portfolio is to impress someone enough that they hire you.
  2. Cloning is okay.
  3. Build web apps, not web sites. Showcase complexity in your projects. A complex project should take you at least 20 hours to build.
  4. Aim for variety.
@Preetham14321

This comment has been minimized.

Copy link

@Preetham14321 Preetham14321 commented Mar 8, 2021

I have no college degree but iam interested to do this projects and blogs which is mentioned by you so my query is can i get placed without a college a degree with doing this projects and blogs?

@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Mar 8, 2021

I have no college degree but iam interested to do this projects and blogs which is mentioned by you so my query is can i get placed without a college a degree with doing this projects and blogs?

Yes.

@AbhigyanSharmaa

This comment has been minimized.

Copy link

@AbhigyanSharmaa AbhigyanSharmaa commented Mar 19, 2021

is this still on?? i am a BCA Graduate , am i eligible for this ????

@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Mar 20, 2021

is this still on?? i am a BCA Graduate , am i eligible for this ????

Yes, please visit https://roc8.careers/apply for more details.

@amansrivastava905

This comment has been minimized.

Copy link

@amansrivastava905 amansrivastava905 commented Mar 23, 2021

can i mention group projects in which i had major contributions.

@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Mar 24, 2021

can i mention group projects in which i had major contributions.

We prefer solo projects. However, if you have the source code and the ownership of the corresponding database (if any), we are open to consider that (but only one or two).

@manojncsoni007

This comment has been minimized.

Copy link

@manojncsoni007 manojncsoni007 commented Apr 2, 2021

after 30th april can i able apply in roc8 jobchallange?

@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Apr 3, 2021

after 30th april can i able apply in roc8 jobchallange?

The current application window closes on 15th May.

@manojncsoni007

This comment has been minimized.

Copy link

@manojncsoni007 manojncsoni007 commented Apr 3, 2021

html css js react is enough for making these project or i have learn to other things?

@yash9263

This comment has been minimized.

Copy link

@yash9263 yash9263 commented Apr 6, 2021

I have made an API using spring boot. Currently working on the client side in ReactJS. It has all the CRUD operations and basic http auth. Will it be considered as a good project.

@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Apr 6, 2021

html css js react is enough for making these project or i have learn to other things?

This should be enough.

I have made an API using spring boot. Currently working on the client side in ReactJS. It has all the CRUD operations and basic http auth. Will it be considered as a good project.

Yes

@prakash855

This comment has been minimized.

Copy link

@prakash855 prakash855 commented Apr 7, 2021

Hi,
I am working in a startup but I too want to elevate my career through elevate labs...
being self-taught I am learning things slowly...
as of now I have worked only with react(front end).
can I apply? are backend projects important?

@burneraccount-css

This comment has been minimized.

Copy link

@burneraccount-css burneraccount-css commented Apr 7, 2021

Few questions

  1. What do you consider as a backend-only project? I have one project I worked on which used ejs (Vanilla JS) for templates and node for backend. Does it fall onto the "Vanilla JS" category or "Backend" projects?
  2. Are tests mandatory in all the apps? If yes, what percent of coverage is ok to just go ahead and submit the project?
  3. By documentation, do you mean REST API documentation or comments.
@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Apr 12, 2021

can I apply? are backend projects important?

Yes, you can apply. No, backend projects are not important as we focus on React developer roles.

What do you consider as a backend-only project?

An example would be a REST API. If you have a frontend in place, it's not a backend-only project.

Are tests mandatory in all the apps?

No, tests are not required.

By documentation, do you mean REST API documentation or comments.

REST API documentation or project documentation in general, in a README file. Comments are not required.

@XephorNova

This comment has been minimized.

Copy link

@XephorNova XephorNova commented Apr 13, 2021

What is waitlist deadline ? And application deadline?
What is the last date I can submit 5 project and 3 blog posts?

@rahulz-415

This comment has been minimized.

Copy link

@rahulz-415 rahulz-415 commented Apr 15, 2021

Project related information is very clear, thanks for the elaborating ideas for projects.

But what about blog posts?
Articles should be about projects or articles about explaining some high level concept in simple way or the article can be how to get started with XYZ things.

Please clarify about the blog post articles. If possible share some examples, I mean some articles links which were submitted by someone before or the kind of articles you are expecting

Thanks 🙏

@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Apr 20, 2021

What is the last date I can submit 5 projects and 3 blog posts?

The current application window closes on 15th May.

P.S. Waitlist deadline applications will be processed a bit later than the normal ones.

But what about blog posts?

It can be anything. As you mentioned, it can explain a high-level concept in a simple way. It can be a getting started guide. You can share a technical challenge you faced while building your projects along with how you solved it. You can even tell your project’s journey with a demo - the possibilities are endless.

@swapagarwal

This comment has been minimized.

Copy link
Owner Author

@swapagarwal swapagarwal commented Apr 20, 2021

Please ask future questions here: https://www.reddit.com/r/roc8/.

@jaecayy

This comment has been minimized.

Copy link

@jaecayy jaecayy commented Jun 6, 2021

what is the last date for submit the projects and what's the range of package ?

@Gobinath24

This comment has been minimized.

Copy link

@Gobinath24 Gobinath24 commented Jun 7, 2021

Hi Sir, I am 2020 BE student looking for a frontend job but the time for submission is over. I have done 3 project right now and two project is ongoing when will the application window open.I am looking for a job seriously right now .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment