# Hacker News

### Show HN: A LaTeX-based resume building app(expresscv.co)

152 pointssoccer3056 posted 3 months ago81 Comments
vmurthy said 3 months ago:

Per update from the author " Thanks for letting me know Have taken the site down until this is fixed" . Basically, the author is fixing an issue wherein resumes were serially numbered and anyone could potentially see anyone else's resumes. If you see a 502 error, this might be the reason :-)

TheChaplain said 3 months ago:

For others thinking of releasing a new project; if you need to take down your site, make sure you display a page with Twitter or a emailaddress form "Contact me when the site is up again"

darkarmani said 3 months ago:

Yes. Either a load balancer sitting as a placeholder in front of it, or in this case just create an Nginx 50x error page saying that.

I imagine that nginx server sitting there is a reverse-proxy, so put a nice error page for when the upstream server errors out.

bitbatbangboo said 3 months ago:

I'm envious of those who managed to script a mass download in time!

ColinWright said 3 months ago:

If the first thing you require is a login, I'll instantly bounce. All I have to go on is an annoying animation and a claim that you create a professional looking CV.

My instant reaction was simply to close it and move on, but I thought I'd at least come here to tell you why.

I've upvoted the submission because I want to encourage others to provide their opinions, which might be different from mine.

soccer3056 said 3 months ago:

Thanks a lot for your feedback! I'll definitely work on your suggestions.

It's my first project, so I am still learning things

ColinWright said 3 months ago:

Massive kudos in getting something up, running, and available for people to use - I'm sure you'll learn a lot. One thing you'll learn is that the core product is about 10% of the whole experience.

As others have mentioned, if you take it down you should have a place-holder so that people know it will be back, and so it doesn't overly hurt your search engine rankings.

ltc5505 said 3 months ago:

I don't have any feedback on the app since it is offline at the moment, but you have a great attitude in response to criticism!

geekamongus said 3 months ago:

m-p-3 said 3 months ago:

It is, you can still use Google SSO.

jjjbokma said 3 months ago:

I made a LaTeX template for Pandoc, so one can write a resume in Markdown (and some YAML) and generate a PDF (or LaTeX). It's on GitHub: https://github.com/john-bokma/resume-pandoc

It needs a LaTeX install, and Pandoc, of course as explained in http://johnbokma.com/blog/2017/05/17/installing-latest-pando... The instructions are for Ubuntu 17.04 but work for 19.04 as well (tested this weekend).

Example resume: http://castleamber.com/documents/perl-programmer-john-bokma-... (PDF).

resurge said 3 months ago:

I used md + pandoc for my resume before as well, but I wanted some more possibilities in changing the layout of the pdf. I remember needing to do some stuff in LaTeX to do that but I don't know that very well.

So I took a different approach with node. I have a yaml file with my cv data [1] in it and I render this in an ejs template to html+css. That html then gets transformed to a pdf. The result can be seen here [2] And the source code here [3]

cocoa19 said 3 months ago:

The convention is to write a 1 page resume. Your example is too verbose.

chrisseaton said 3 months ago:

It varies by country and industry. Six pages is fine in my experience.

cosmodisk said 3 months ago:

Which country is it? With 6 pages one needs to be a phd with 20 years of experience and plenty to show, otherwise 1-2 pages max.

hprotagonist said 3 months ago:

My current principal investigator has a 40-odd page CV. They’ve been doing research since the mid-70s: hundreds of invited talks, papers, posters, book chapters, awards, etc. take up a lot of space.

This highlights the difference between a resume and a CV.

chrisseaton said 3 months ago:

Right, but in the UK, for example, we don't do resumes, only CVs.

mruts said 3 months ago:

Are you saying that everyone in the UK is an academic?

chrisseaton said 3 months ago:

> Are you saying that everyone in the UK is an academic?

Does it honestly seem likely to you that that's what I'm saying?

No.

I'm saying people in the UK don't write resumes. They write CVs. Whether they're an academic or not. And they're generally a couple of pages at the very least.

I get that's different to how it is where you are - but it's normal for things to be different in different places around the world.

hprotagonist said 3 months ago:

yes. They don’t have a resume at all in fact.

distant_hat said 3 months ago:

The funny part is during hiring etc people pore over CVs like this too. I was in academia for a few years and invited talks etc pile up rapidly, and are pretty repetitive anyway. I stopped reporting most invited talks and just had a section on selected invited talks.

luizfzs said 3 months ago:

CV and resume are different things.

chrisseaton said 3 months ago:

Well yeah that’s the kind of person working in my industry.

wolco said 3 months ago:

Lol, create a summary one page. Showing your full history can separate you from the masses.

bgeeek said 3 months ago:

Varies - UK used to be 2.5 pages max, but can imagine academic CVs being longer.

hprotagonist said 3 months ago:

in my (american academic) usage, “resume” is exactly one page and is a custom-made document to apply for a specific industry job. “CV” is “literally everything i’ve ever done since freshman year of undergrad”, and may run to 40 or more pages for senior researchers. A "biosketch" is a CV that is tabular and formatted according to semi-arcane rules laid out by funding agencies, normally the NIH.

I think of a resume as a targeted redaction of my CV.

jjjbokma said 3 months ago:

That distinction is good to know, thanks!

said 3 months ago:
[deleted]
jjjbokma said 3 months ago:

I am aware of this and have plans to trim it down to 1 page. Thank you for the feedback.

vikin9 said 3 months ago:

Please keep both versions up to date! Once you get the attention of recruiter (using your one-page Resume) then they usually ask for more information - longer CV, skills matrix, etc.

I invested some time to shorten my resume to exactly one page and now I get a bit irritated when people ask me for a longer version.

jjjbokma said 3 months ago:

Thanks for your feedback. I will keep both and call the short one my resume and the long one my CV.

gpestll said 3 months ago:

Hi, there's a major problem with the URLS of CV's, all are available to everyone as they're numbered in order and there's no permission locks.

soccer3056 said 3 months ago:

Thanks for letting me know Have taken the site down until this is fixed

Findeton said 3 months ago:

Just use UUIDs

jjjbokma said 3 months ago:

> Do not assume that UUIDs are hard to guess; they should not be used as security capabilities

https://news.ycombinator.com/item?id=10631806

snazz said 3 months ago:

Use a crypto-quality PRNG (/dev/urandom is fine) and you should be fine, especially since the time it takes to brute-force URL parameters is very high (network latency). Just about anything is better than sequential numbers here.

codingdave said 3 months ago:

They are harder to guess than sequential numbers.

No security is perfect - it is all deterrence. Using UUIDs instead of numbers at least closes the front door, even it it isn't locked.

Xelbair said 3 months ago:

Guids instead of numbers should suffice as quick and dirty fix :)

hprotagonist said 3 months ago:

Personally, I

  \documentclass[10pt,sans]{moderncv}

and then go from there. I’m leery of keeping my CV or details on it anywhere but a private git repo.
neilv said 3 months ago:

LaTeX or TeX is a good way, especially if you're sending select people the PDFs directly, not putting it into some awful resume farm that tries to process it into some other form (and then someone possibly uses the badly-processed resumes as an excuse to cull, or resumes simply never show up in searches, or processed resumes look bad when someone sees it).

My current one, which I'm determined to keep to one page, starts like the below, in which I often have to tweak things like page margins and vertical gaps (until recently, it was 11pt, and I'd prefer 12pt). I also recently experimented with putting everything in a single chronology, including degrees, and dropping headings, with no separate skills section. I have no idea what's better, so I'm just reconciling the resume with personal style, which says one page, schools are a privilege rather than a bragging point, experience is more important than keyword spamming, and I don't want a keyword-searched job anyway.

  \documentclass[10pt,letterpaper]{article}
\usepackage[letterpaper,margin=1in,top=0.5in,bottom=0.3in]{geometry}
\usepackage[scaled]{helvet}
\usepackage[T1]{fontenc}
% \usepackage[none]{hyphenat}
\pagestyle{empty}
\setlength{\tabcolsep}{0em}

\newcommand{\Section}[1]{%
\vspace{12pt}
\noindent{\large\textbf{\textsf{#1}}}}

\vspace{6pt}
\noindent\begin{tabular*}{\linewidth}{l@{\extracolsep{\fill}}r}
\textbf{\textsf{#1}} & \textsf{#2} \\
\end{tabular*}
{}}

\newcommand{\DescBreak}[0]{%
\vspace{4pt}\noindent}

\newcommand{\Caps}[1]{%
{\small #1}}

% http://tex.stackexchange.com/questions/4302/prettiest-way-to-typeset-c-cplusplus
\newcommand{\Cplusplus}{%
C\nolinebreak\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\nolinebreak\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +}}

\newcommand{\CandCplusplus}{C/\Cplusplus{}}

\begin{document}

\begin{center}
{\textbf{\textsf{Jane Smith}}}\\
{\small \textsf{Cambridge, Mass., \Caps{USA}}}\\
\texttt{jsmith@example.com}
\end{center}

%\vspace{-16pt}
%\Section{EXPERIENCE}

...
pseingatl said 3 months ago:

Could you post the rest of the tex file?

neilv said 3 months ago:

Just add these two lines to the end (and unindent the entire file 2 spaces that were added for HN markup), and it should work with LaTeX, and then you can just make more instances of the HeaderDateDesc begin-end part, for each experience/degree:

  \end{HeaderDateDesc}
\end{document}

If your LaTeX install is missing some packages, you might need to Google for how to add them.
mlurp said 3 months ago:

Mind if I ask why? Isn't it something that probably gets passed around once it's out?

x38iq84n said 3 months ago:

It may contain personal information that could be used e.g. in social engineering.

saagarjha said 3 months ago:

Again, isn't this something that is publicly shared quite a bit?

harry8 said 3 months ago:

should be privately shared, surely?

LanceH said 3 months ago:

Your resume gets out there, a recruiter submits you somewhere, trying to get traction. You submit yourself there and now you're attached to a recruiter (and his expenses) that you shouldn't be.

hprotagonist said 3 months ago:

My work life does not involve recruiters in any way.

wazanator said 3 months ago:

If you've ever put your resume up on a site like indeed, monster, etc. Then it's definitely been scooped up and put in a billion different job search engines.

But maybe you're fortunate enough to have avoided that mess.

harry8 said 3 months ago:

If you publish something that isn't sharing it privately. If you provide your resume to a prospective employer or their agent (recruiters do NOT work for you) that is sharing it privately. If it becomes public as a result of you sharing it privately someone has been a jerk. IMHO beyond being a jerk their should be serious repercussions for publishing something without consent, inadvertently or deliberately. Something more than a minor business expense. Something like criminal charges against a person.

jedberg said 3 months ago:

Of course it does. You may not work with them, but the companies you apply to do. They will pick up your resume and share it. Anything on your resume should be considered public information.

harry8 said 3 months ago:

If they do so without your consent they are breaking the law, I believe.

jedberg said 3 months ago:

I used LaTex in college, to typeset all my essays. I also used it in my creative writing class, and people were amazed that I was able to add line numbers to my work so we could easily discuss it by referring to line numbers! I'm pretty sure I got better grades in all my writing based classes based solely on the fact that I used LaTex to typeset my work.

The last time I wrote a resume[0] I used LaTex to do it too, and I provide the LaTex source[1] on my website. I've seen bits of it show up in other people's resumes, which is exactly what I want to happen! But what was funny was how often people would say "boy this looks so clean and professional!". Pretty sure I got some interviews just because of how "pretty" my resume was.

beefhash said 3 months ago:

> I've seen bits of it show up in other people's resumes, which is exactly what I want to happen!

Shouldn't you attach some kind of license to the TeX file, then? Right now, it just holds your copyright and everyone stealing parts of it is presumably in copyright violation.

jedberg said 3 months ago:

Good point, never even thought about that! I'll update it with an appropriate license. Thanks for pointing that out.

leemailll said 3 months ago:

Your site doesn't offer a screenshot of the final file or pdf of it. At least make it better than https://www.overleaf.com/latex/templates/tagged/cv to encourage people to jump in.

alien1993 said 3 months ago:

I had to recently redo my CV, I made the previous one in InDesign but I needed to work on it both on Linux and Windows so I aimed for something easily editable and portable.

I tried creating in markdown and converting it to pdf with pandoc but the result wasn't that great since I could not style it, I discarded LaTeX too since I didn't really have the time to learn a new tool.

After a bit I settled on HTML and SCSS, I also written a small Dart script to compile to CSS using lib-sass, converting to pdf is really easy since I just print the page directly from the browser. While writing it I also discovered that there are certain CSS media queries just for printing a page, I used it hide certain elements when saving to pdf so I can have just one source for both browser and print.

If you're in a rush I suggest you take this approach into consideration.

If you want to have a look here's the links to the hosted version and the source.

https://www.silvanocerza.com/resume/

https://github.com/silvanocerza/resume/

uoaei said 3 months ago:

Careful!

I had a very hard time getting interviews for the longest time. It turned out that the main problem was my LaTeX PDF resume and the class file I had made for it. The automatic parsers attached to every online application had a very hard time extracting the information appropriately, and I believe as a consequence that that information never made it to hiring managers' eyeballs.

If submitting to online applications, either use a very simply formatted LaTeX class file or do it in Word. Everything reads Word now, since it's basically fancy XML.

pseingatl said 3 months ago:

HR systems are automated. If you apply using the system, beautiful LaTeX formatting doesn't matter.

said 3 months ago:
[deleted]
francis-io said 3 months ago:

I went down this route in the past using things like https://jsonresume.org/ and even latex to create lovely PDF outputs. The thing is, most people want the least friction in viewing your Resume/CV and the best results I get now is from a public link to a Google Doc. This lets anyone view in the browser, copy and paste is not an issue and the can export it as doc/pdf directly if they wish.

tombert said 3 months ago:

This is true, though I've found personally that there is an unintended niceness to having your resume down in LaTeX/PDF: recruiters can't break the formatting by adding their ugly logo on the top.

This probably is an outlier, but about 6 years ago, I had a resume that I wrote in the typical .docx format, a recruiter added their logo on the top, all the bullets became misaligned, and during the interview, the interviewer actually asked why I would submit such an unprofessional thing for a place that I expected to work (though he said it more politely than that). Lord knows how many people saw it and turned up even giving me an interview because of it.

After that incident, I redid it in LaTeX, and whenever I talk to recruiters who ask for my resume in a Word/Google Docs format, I tell them "I don't own a copy of MS Word, but here's a link to the TeX source!". I've never had anyone ever push back after that, and since most non-engineers don't know how to use TeX, they don't break the formatting.

pseingatl said 3 months ago:

HR systems are automated. The system parses your submitted cv and enters the info into a database. Do you think a human being looks at your cv? Unlikely. You need something more to get out of the slush pile. Like, making sure all of the words in the job description are in your cv. Every. Single. One. There may be other techniques. Every system (can be) (has already been) gamed. Frustration with automated HR systems is what drives so many to try to contact individuals inside a company. Do you know how many applicants Facebook gets for an advertised position? 10,000 or more. Even for non-computer related positions, such as real estate acquisition for their new data center project. There are simply too many cv's to review by decision makers, so they don't get reviewed. The same applies for all the large tech companies. If you get a formal, face to face interview, by all means bring several copies of your nicely-formatted cv. But remember: a cv is advertising. Especially at the early stages.

pjc50 said 3 months ago:

For comparison, I set myself up with a LaTeX CV about 20 years ago and have used it ever since. For those occasions that required Word I pasted it from the PDF. I also have a small Makefile to "build" it.

https://flatline.org.uk/cv.tex.txt

The trouble with this is resisting the temptation to make it look ""just right"" and instead go with minimally-altered defaults.

i_are_smart said 3 months ago:

I used to write my resume with LaTeX, but the last time I was job hunting I decided to take a different approach - now I keep my resume as a single semantic HTML document, and I apply useful categories and tags (as classes) to each bit of job experience/accomplishment/education I have listed, and I have a bit of javascript that makes it easy to hide portions from the printed version (via css print styles).

I do it this way because it allows me to keep all of my experience and history in one single place, while also making it easy to create reduced subsets tailored to specific jobs.

rishiloyola said 3 months ago:

Not able to access it. Nginx error - 502 Bad Gateway

LocalPCGuy said 3 months ago:

Since I can't see this while it's being updated, question: Does it use the JsonResume standard? Even if there is an UI for building the resume, storing (and potentially allowing uploading of) the data in a standard that currently exists seems like a good idea.

stevekemp said 3 months ago:

It is a shame that it has been down almost since it was posted, I see from your history that you were looking to sell the site eight months ago. Is that still the case, if not what changed?

said 3 months ago:
[deleted]
said 3 months ago:
[deleted]
blacksoil said 3 months ago:

502 gateway :( too much traffic?

philshem said 3 months ago:

OP took page down because of insecure permissions due to sequences ids

https://news.ycombinator.com/item?id=20163506

theasteve said 3 months ago:

angvp said 3 months ago:

502 :/

fitnesshealth said 3 months ago:

dapids said 3 months ago:

I like how security of your site was an afterthought. Why should people trust your site for their CV? Where is your policy?

tehlike said 3 months ago:

Be a little more supportive, and make suggestions.

ezconnect said 3 months ago:

The spelling made me think of another latex and was really confused on how he did it

kowdermeister said 3 months ago:

Laser engraving :) It would make a sick CV, but better suited for name cards.