How do experienced developers create resume

So after building my dream project (password manager) Im at point that I feel at least 95%+ “job ready” then I login into Heroku and I see the free plan is going to be removed and I have there like 7 projects/dynos (on 2 accs) and im like: all my “showcase” will be gone?
→ So, how do u guys with 5/10+ yrs of experience “prove” you can do the job besides having past jobs (bcuz i dont have one, but i spent 3yrs on/off) - do u keep ur 2-3 big projects on Digital Ocean & pay only when u apply for new jobs? Or do u write like a mini-essay in “My projects” section where I have images and 2-3 sentence of text below each?

There is a saying that you’re only as good as your last project. So your resume would go over your projects, your personal contributions, your impact and the general outcome. That alone should get you some hits due to your pre existing experience.

Since most work on a resume is job related, there wont be a hosted example of that work, unless it’s the sort of work that is publicly available.

Since there aren’t any direct examples, most interviews you get will hit up on different aspects of your resume, and you will have to go over it again in more detail and answer questions on it.

There might be a misunderstanding here. Most work you will do as a developer wont be your own, so you don’t/can’t host it yourself. Depending on your job, you might not even be able to talk exactly about what you did due to conflicts of interest. For example, if I worked at Twitter, I couldn’t show you the code I used to improve ad conversion by 15%, as that is proprietary to Twitter.

For your case, if you need to show off your projects directly still, you might want to look into Digital Ocean, which is still pretty cheap and host all your projects there. However you may need to do more leg-work to host/server/run all your projects on a single droplet instance to keep costs down.

I’d also suggest in the mean-time to apply for jobs now rather than waiting. I usually suggest getting feedback earlier in the process and thus apply to jobs earlier with the goal of getting rejected but being able to gather feedback on your approach.

Odds are when you feel 100% ready, you’ll get rejected and only then get some indication if you’re actually 100% or not. That said, you could also get lucky even if you don’t feel 100% about it, so don’t wait and apply and see what happens. Rejection is all part of the process, so try not to get too concerned about it.

2 Likes

There are also other options besides Heroku for your portfolio apps. You might take a look at moving apps to Adaptable.io or Render instead.

2 Likes

Do you know if Docker is the way to achieve this or is it much more complicated than that ?

You could use a Docker based setup with Digital Ocean’s Droplets.

The thing with Droplets is that they are just “computers in a closet”. They do nothing for you besides keep that computer up and running. So you’ll have to manage how you run your code and get it to users as if you just had a computer in a closet connected to the internet.

This means you could use Docker to run your code in containers… but then you’ll need to hook those container instances to the outside internet, and maintain your code through Docker.

You could also just directly run your code on the machine itself, as you have complete control of the environment.

Assuming your apps on Heroku used say nodejs, then I’d just use a pm2 to manage all the instances, and maybe nginx to handle the requests being made to each pm2 instance and map it to their corresponding domains (if you have any).

This is the “simpler” option, but could still get complex as you again are in charge of hooking things up.

1 Like

YMMV but it’s possibly not terribly useful asking what an experienced developer does in this situation because the answer is, in most cases, going to be “they ask for my CV and everything is based on that”. Having past experience is the deciding factor – if you have, say, 5 years of working with frontend tech, then they will believe you if you say you know frontend tech. The time spent working as a programmer is the thing that proves you know how to program. Then in the CV, normally state in a bit of detail what each job involved.

Having projects or whatever of the kind I think you mean is most useful for your first job, when you can’t prove anything via experience (authoring/maintaining popular open source software, popular blogs/books/streaming/etc, conference talks, education materials are other things that are similar to “projects” and naturally help getting jobs but they normally require and sit alongside previous work experience).

With the apps, there isn’t really anything as simple as Heroku unfortunately, though there are a lot of very similar services in that space; it’s going to depend slightly on what you’re deploying

Re Docker, it would be very useful to learn because it’s so heavily used, but note that it will likely complicate things for not much benefit (again, YMMV, I know people who swear by it for everything). It’s not going to magically make anything simpler, it’s another layer on top of everything else.

2 Likes

To answer the main question: “How do experienced devs create a resume?”

I just add my last few most recent jobs with 2 or 3 bullet points under each one listing some highlights. It’s 1 page and super simple.

No one has asked to see existing projects or bothered to look at my GitHub or anything like that during the hiring process since my first couple of jobs.

For most experienced devs the “proof” is just in conversation during the interview(s). But there are things I do and I know others with similar or more experience that I do as well.

I don’t know if any of this has ever actually been the determining factor in getting hired somewhere. I do know that when applying to jobs, people have checked my stuff out, but I have no idea if it mattered.

In any case, it does help break the ice a bit when you meet your interviewer. There’s always a bit of small talk in an interview and sometimes my side-stuff organically comes up (or they bring it up) and it definitely leads to some interesting conversations. Here are the things I do or have done:

  • Write technical articles/tutorials and post them to my blog
  • Create coding tutorials on YouTube
  • Code live solo on Twitch
  • Host/join mob programming sessions on Twitch
  • Publish open source packages

I do have a lot of mini-pet projects on GitHub too but for the most part I don’t really advertise them. They pale in comparison to anything I’ve worked on professionally so they just don’t have a place in the conversation when someone asks “Tell me about a difficult problem you solved recently”.

Other things I’ve seen people I know do on top of the above:

  • Contribute to large open source packages/frameworks
  • Give tech talks at meetups and/or conferences
  • Host or be a guest on a podcast
  • Publish a book or course
  • Build a SaaS
  • Build

plugins or extensions for software such as WordPress, VS Code, IntelliJ IDEs, frameworks like Laravel etc

Actually some of my stuff is on Heroku so I guess I need to look into this too lol

Lately most of my pet projects are leaning toward being more FE heavy with serverless functions as the “backend” so I just host everything I do on Netlify and it’s completely free. Vercel is another great option for this too.

If I had to host anything running a full backend in Node or PHP I would have used Heroku previously but now I’ll likely use AWS or GCP. This is a whole rabbit hole you might not want to go down but if you use Pulumi you can define your infrastructure as code and stand it all up and tear it down with a simple command.

I have a small handfull of projects built like this and they cost me essentially nothing. I stick to the free tier of the AWS resources I need and when I don’t need them live I just run pulumi down or whatever, and all the resources are killed so I don’t get a surprise bill if I go over the free usage.

Another option I know works for some people is using something like Digital Ocean or Linode and running multiple apps/websites on a single server. This way you can get away with only paying $5-10/month to host your side projects which probably don’t use enough resources to require a dedicated droplet.

On your portfolio website this is a great idea. On your resume though? No, don’t do this.

Here’s what my resume used to look like back when I had a lot less experience and I have to say, this didn’t get me many calls back. This is a good example of how NOT to make a resume: Copy of My Resume - Google Docs

If I were to redo that resume I would make it look more like my current resume (which needs to be updated now, I just haven’t gotten around to it): Copy of Resume - Google Docs

Even that resume is probably a bit too wordy to be honest. But if I didn’t have the work experience I would just list projects with 2-3 bullet points each and keep the whole thing to one page.

1 Like

I’m on my third job. After the first job, they were a lot less interested in my portfolio page. Having worked at my first job for two years, that was my “proof” that I knew what I was doing. They asked me what I had done and I’m sure they were checking if I knew what I was talking about, but there was little (probably no) discussion of my portfolio and very few of the interviews had any actual coding. There were more discussions about the libraries and techs that I’d used, some more abstract coding questions, how would I handle this problem, etc.

I did add the apps I worked on at work into my portfolio to just show what I’d been doing, with a note that there was no link to the code because it was proprietary.

I did an odd project here and there and a little open source, but seriously, I wasn’t building up the portfolio - it didn’t seem to hurt me. I think people understood that I was a full time coder and wasn’t spending 30 hours a week working on pet projects.

2 Likes

I totally agree that actually running a deployed project is usually not necessary. This was true even for my very first job interviews. A very simple solution is to make a screen movie capture of the app and show it at the live interview. If you say Heroku started charging so you took it down, everybody will understand.

Additionally, if you have enough good bullet points on the project on your resume, most interviewers will get a sense if you know your stuff or not without even looking at the project itself. Instead of saying “used xyz tech stack”, try to write out the pros and cons of that tech against other similar tools, and explain why you ultimately picked what you picked. good luck!