* Be patient. I grew impatient and jumped on an opportunity outside of software.
* Be careful what you wish for. The same failings and faults that apply everywhere else in software hiring will happen here too. Always be skeptical of the process, and ask good questions.
* Keep your experience in mind. Mostly what software companies are looking for is experience. Education is a nice to have, but it isn't required to be a developer. Education is never a certification no matter how much you wish it were or how expensive it was. If you have no experience you should expect to start as a junior developer.
* You don't need to be hired to obtain experience. Nothing is preventing you from writing open source software personal project and making mistakes that you are learning from. As somebody with a masters degree you are in a stronger position for advancing quickly compared to most other developers. After 20 years of writing software I am convinced that there are only 2 difference between a novice developer and an expert: writing skills and an advanced appreciation for data structures. Those are both skills that take practice to develop and the results a self-evident when reviewing code.
Agree or disagree?
An application written with original logic directly to the requirements provided will be smaller, execute faster, and require less overhead to maintain than something written with a giant framework provided your developers know what they are doing. One of the biggest selling points to using a large framework is precisely because many developers don't know what they are doing and many businesses are not willing to invest the money in training and documentation.
There are also specific demands that require original code that a framework is not ideal for. One of the employers that contacted me from HN was wanting me to write and maintain a Jabber based chat client that runs the browser with high concurrency like a high volume IRC room. Performance was critical and so they didn't want to deal with the overhead of a large framework.
Also, large frameworks are generally there to supplement developers' insecurity with the DOM and general architecture in the browser. That doesn't solve for writing a Node.js application.
As for myself I do both client-side and Node.js work. I enjoy working with Node more because that space is less opinionated. Developers' have all kinds of irrational opinions that they are willing to bet their careers on when it comes to working in the browser. Compared to most of that foolishness I am a 10x developer, and its not because I'm great at writing software.
What is super frustrating though is talking through these concerns during a job interview and dazzling the interviewers virtually ensuring my selection for the position. This is super frustrating because it isn't my intent. I am not trying to impress anybody when I go down that risky path of laying all my cards on the table. I am trying to voice my concerns as directly as possible to ward off a future bad relationship. Then once I get hired and go to work on the team sure enough all my apprehensions that I attempted to illuminate during the interviews are present ensuring that everyday at work will be a slow death trying to sprint though an ocean of tar.
The further your features get from a static html page the less JS frameworks helps. For example you can pretty easily write super mario in vanilla JS using normal html elements for rendering, doing that in JS frameworks would not be very fun at all. However if all you want to do is display data from servers or let the user fill in forms then JS frameworks are pretty good.
I disagree. It's extraordinarily trivial. Managing state is as simple as changing the value in a settings object as the user interacts with a control on the page and then saving that object so that when the page is reloaded there is known restore point by which all controls are repopulated and in the condition from which they were left. In my current personal project I am synchronously sending the state object to a Node instance that writes it to a file so that state is restored cross-browser and cross-computer.
These are beginner things. The only reason why many developers even pretend they are vaguely more challenging than copy/paste is because they have never written this logic themselves.
I am tired of being stuck, at work, in perpetual beginner land with developers who are intimidated to write 3 lines of code without 3mb of framework to tell them how its done. It isn't because these other developers lack the intelligence or capabilities to write original code. It is because the social state of development encourages them not. Here are some reasons why:
Many developers college educated UI developers I have worked with prefer to toggle configurations instead of writing original logic, even trivial logic. This is what they were taught in school and this how they were prepared for the real world. This is bad design. Playing around with configurations wastes people time. A better approach is to simply supply a working default state for any conceivable configuration and a point of automation to supplying changes to options.
As I have mentioned several times already in just this comment most UI developers I have worked with are deathly afraid of writing original code. This isn't because they are incompetent or incapable. It is primarily due to social reinforcement where any locally crafted software is inherently untrusted compared to equivalent code written by a stranger from some untested external package. I have experience this myself when a colleague adamantly told me to use some software in preference to the current office approach from outside the company not realizing I wrote a good porting of the software he was recommending. This social state is so prolific it even has a name: https://en.wikipedia.org/wiki/Invented_here
Developers also go way out of their way to reinforce much of this irrationality by offering simple cliches in their defense. The most common are:
* Writing a web application is too hard to scale without some framework to do it for me
* Reinventing the wheel
* The DOM is too slow (implying that somehow a framework makes it faster)
There is no evidence behind any of those points, but there is plenty of evidence and examples to the contrary. Its irrational nonsense that people use to reinforce bad ideas shared by their peers. I am no longer interested in working along side that lack of evidence-based critical reasoning and fear of originality.
If this means dismissing many potential employment opportunities then so be it. I would rather find a rare better fit than desperately settling for something so unambitious.
* Code: https://github.com/prettydiff/share-file-systems
* Demo: http://mailmarkup.org/sharefile/demo1.mp4
The video demo is a few months old now, but in the current code I have broken network sharing during a refactor. The GUI and local file system still work well though.
Frankly, avoiding jobs that use frameworks seems like you're choosing for nothing more than legacy spaghetti-code messes, not some sort of back-to-basics enlightenment. But I'm not here to judge what somewhat likes. :P
Maybe there's just something I don't get and clearly frontend developers somehow manage to make all of this work, but to an old-school backend guy like me the modern JS ecosystem seems horrifying, needlessly complicated, over-engineered and brittle.
the project is pretty simple, and modern js is significantly improved, so the notion that you have to reinvent the wheel seems false.
When I mentioned in my comment above that writing is one of only two things separating a novice from an expert I wasn’t being clever.
As for OP my suggestion is that the people who read Who wants to be hired are MUCH more clued in on tech than the average recruiter. If you’ve written blog posts or done anything cool or noteworthy put them in the post. They might make a difference.
I also had help from a friend who was a top ranked competitive programmer. We went over problems together. To anyone with a competitive programming background most FANG interview questions are absurdly easy.
You often see people asking “So I’m supposed to come up with these 3 tricks to solve these problems in 5 minutes and write the code in 20 minutes under pressure ?”. Competitive programmers have trained themselves to do exactly this and they do this consistently on questions way more difficult than the average FANG interview. The value of this skill in day to day development is debatable but it’s definitely something to sharpen your mind. It’s something one can learn to do with reasonable effort and is not impossibly hard as some like to claim.
I also winnowed down on what to prepare by eliminating types of questions not generally asked or too difficult by scanning lists of common questions asked. Although I had only a few weeks to prepare. If you have more time the second step may not be as necessary.
If you have one month to prepare use the Elements of Programming Interviews book. If you have more time check out Udi Manbers book on designing algorithms using induction. It goes into the why and the how.
In recent times I’ve observed that the system design interview increasingly plays the deciding role as most candidates can now solve the DS/Algo questions being asked.
But remember that you're probably competing with above average developers and as someone with little experience you may be overshadowed. Don't let that discourage you but be grounded in your aspirations.
I will say that more than one of them was by people who were not hiring managers but rank-and-file employees fishing for referral bonuses.
The number of good leads I got was effectively zero.
- incredibly expensive
- political gridlock preventing the city and region from taking action on common sense livability issues like:
- housing supply and affordability
- drug abuse
- sanitation (see: "San Francisco Poop Heatmap")
All of the above create a city with a transient population that can only afford to stick around for a few years, which leads everyone to treat the city as a temporary playground.
I made a lot of fond memories of San Francisco, but it's always been a gold rush town: young men come seeking fortune and adventure, but they tend to leave a few years later with their pockets empty... if they're lucky, perhaps a little wiser for the wear.
What we're doing differently:
* Building way more. We had (have?) the most cranes per capita of any US city, and price inflation noticeably slowed – flatlining at times – in response to increased housing availability.
* Building taller: in addition to more development overall, I see more multi-story construction here, anecdotally.
* Investing and policing transit more aggressively. The light rail is much newer and better maintained than BART. Both trains and stations have officers on regular rotation. Stations are clean, and fare enforcement is a thing sometimes. Seattle's major stations (Westlake, Capitol Hill) feel nothing like their SF equivalents (Powell, Mission).
* The harsher climate isn't a thing we're "doing", but it likely makes Seattle a less desirable destination than SF for the chronically homeless, so it feels dishonest not to mention it as a factor.
This isn't to say that we're free from these issues – our problems differ in degree, but not in kind. But that change in degree has a palpable impact on everyday life.
* It is possible (albeit expensive) for non-millionaires to purchase a home and raise a family here
* Traveling around the city on foot and via public transit is fairly pleasant outside (outside of rush hour)
I'm glad I tried living in SF. I grew up in Sacramento, and always kinda knew how bad it was over there just from visiting, but my philosophy is that I'd rather try something and hate it than not try at all and regret missing out. And don't get me wrong, it was kinda "fun" at first, but it quickly grew into the "Dwarf Fortress" sort of "fun"  - except unlike in Dwarf Fortress, when that "fun" culminates in everything going to shit, you can't just start a new game.
My specific grievances:
- Cost of living. Rent especially, but groceries, utilities, California income tax, sales tax, and all sorts of other little paper cuts contributed to my savings almost entirely tanking. I got out just in time.
- It's way too crowded. Just... way too many people, no matter where you go. A lot of people like that, apparently. I ain't one of 'em.
- The public transit system is atrocious. BART is tolerable, but BART doesn't go everywhere, and certainly doesn't go everywhere in SF. MUNI seems to think time tables are optional; whether or not I get to work half an hour early or half an hour late seemed to depend entirely on a dice roll, and the RNG gods rarely looked down on me favorably. Not nearly enough metro rails, especially through the city (unless you want to pay a premium for the cable cars, and also be beholden to their very-much-optional timetables). But oh well, guess I'll just drive, then, right? lol nope, because...
- Traffic is atrocious. Probably is a contributing factor to public transit being atrocious. A lot of it is entirely preventable; yeah, there are some cases where congestion is legitimately an issue of too many people trying to drive cars into a single place, but more often than not it boiled down to poorly-timed stoplights (seriously, has San Francisco not heard of these nifty inventions called "sensors"? I lost count of how many times I've exclaimed to myself "why the hell is this light red at 3am if I'm literally the only living being at this intersection?") or assholes double-parking (or parking in no-parking zones, as inevitably happens when some box truck driver thinks he's special and "No Stopping Any Time" somehow doesn't apply to him).
- The homeless situation is atrocious. The air is thick with the smell of sea foam and human excrement. Piss and shit everywhere. Even worse in the Tenderloin, and even the Tenderloin is running out of space, so the homeless are forced into the surrounding "nicer" areas. To be clear, I don't blame the homeless in the slightest for their situation; there's no reason one of the richest cities in the world couldn't house and feed and clothe and heal and otherwise help every single person on the streets. And yet, San Francisco - despite "trying" to "help" the homeless - barely moves the needle at all, all because...
- ...it's a city populated by elitist NIMBYs in an increasingly-large proportion to the overall population. Let's be clear: if you can afford to live in San Francisco - and therefore actually vote on San Francisco's policies and projects as a city - then you are coming from a place of enormous privilege, whether that be the privilege of having been born and raised there (and even that ain't a guarantee, given how many locals are getting priced out of their own neighborhoods and shoved south and east) or the privilege of having an absurd amount of money. You want homeless shelters or improved public transit or just more space for people to live so that more people can actually afford to have a roof over their heads? "Fuck you I've got mine", say SF's voters, and instead you end up with townhouses as far as the eye can see. Property values matter more than even basic human needs, apparently. Never mind that all but the absolute wealthiest of these people are perpetually a couple paychecks away from being on the streets themselves. And to rub salt on that wound...
- ...those same NIMBYs then turn around and wrap themselves up in faux-progressivism. It's intellectually dishonest to claim to support the rights of ethnic or sexual minorities while simultaneously depriving them of their inalienable human right to life (by tolerating their lack of food and shelter and sanitary conditions) all because a homeless shelter would lower property values in the neighborhood. It's intellectually dishonest to claim to want to protect the environment while contributing directly to the urban sprawl (and therefore the simultaneous greenhouse gas increases - since public transit's still a dumpster fire - and destruction of habitats) that's necessary in surrounding areas specifically because building adequately-dense housing would ruin the ocean view from one's townhouse.
Now don't get me wrong, there are still lots of good people in SF - people who, while still benefiting from that high baseline level of privilege necessary to actually live in SF, were at least cognizant of the need for improvement and actually seemed to care. Unfortunately, those people are typically the ones closer to the "one paycheck away from homelessness" threshold, and/or are having to increasingly sacrifice their own standard of living to unacceptably-low levels to keep themselves above that threshold. They're fighting a losing battle, and gradually getting pushed further and further away as a result. It's likely that they'll soon be the minority, if they aren't already.
And so, I left. One less contributor to the problems. One more vacancy to be filled by the next schmuck dumb enough to try to live there. But at least I did try, and even though I ultimately failed I did make my share of good friends and make my share of great memories. That's ultimately what matters, right?
If you want the big city experience without getting ground to dust, might I recommend Texas? El Paso and Austin are both pretty different from the typical midwestern vibe. If you insist on California, my biased recommendation would be Sacramento (it's facing a lot of the same problems as SF nowadays, but to a more manageable degree, IMO); it's consistently neck-and-neck with the Bay Area on a lot of diversity factors, and the people are way more chill there (for the most part).
Do you believe it's a human right to receive food, shelter and sanitary conditions? I don't. For me, people have a right to work for (or otherwise pursue) those and if unfairly prevented by other people (and not by circumstances outside human control, such as mental illness), their rights are violated. But that's as far as the human rights go.
> I don't.
Then I'm assuming you're not American, or if you are, then you're a traitor (not that I'd necessarily judge you for that; a staggeringly large number of Americans are traitors by this metric):
"We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness."
That is: our very founding principles forbid us from denying our fellow Americans food or water or shelter or sanitation or healthcare or the other things that are necessary to achieve those three fundamental inalienable God-given rights¹. It is our duty - our imperative - as a nation and people to do what we can to provide those things to those unable to provide them for themselves.
> and if unfairly prevented by other people (and not by circumstances outside human control, such as mental illness), their rights are violated. But that's as far as the human rights go.
I can't tell which one of these you're saying:
- People who are able to work toward obtaining those things, but are prevented from doing so, forfeit their rights to those things
- People who are unable to work toward obtaining those things (due to e.g. mental illness) forfeit their rights to those things
I mean, both viewpoints are pretty reprehensible, but it'd be interesting to get some clarity on which one you believe, since the way you've worded that makes it sound a lot like you believe only one of those two groups are worth helping.
¹: Feel free to substitute "God" here for your deity or deities of choice, or the lack thereof; you don't have to believe in God to be a decent human being.
At the absolute bare minimum, if it's really so much trouble to build more homeless shelters, we could and should designate more places for homeless people to take shelter into their own hands (e.g. tents or cars) without fear of some jack-booted badge-wearing thugs kicking them out and confiscating what little personal possessions they had. As long as they ain't committing other crimes, I fail to see what the problem is.
That said the mentally ill should definitely be supervised, and it should be an article in the constitution that enough housing be built for the rest of us, without restriction.
So, I think we mostly agree, just a different way of getting there.
True. I'd argue that includes depriving others of food or shelter, too.
Ping me via email if you want to discuss more.
I don't think anyone doubts the effectiveness of the latter.
Some advice: If you want to stand out, make your initial contact as easy and as complete as possible. The more the person on the other end needs to work to access your resume, understand who you are, and discover other details, the less likely you are to get a response.
making the whole CV public is not going to work for everyone, as some may not want to be identified while searching for a job.
If you've been looking for a job for year without any promising job leads, i would recommend:
-seek some feedback on your resume
-speak to some professional developers for some general advice on getting the first job
I'd be happy to help if you want to message me on twitter @jakeduchen
At the end of the day, I think both sides of the table was wonderfully honest, flexible and open to finding a potential fit/solution/consensus, but we couldn't figure out a satisfying way to make the parts fit together.
I've done about a dozen interviews since January (and found several offers), and several dozen more earlier in life. The interview I found via "Who wants to be Hired?" really stands out for being the most earnest, open, flexible, and consensus-focused. It felt like discussing a potential partnership ("Here's where I'm at, whats that look like for you?"), rather than a typical job interview -- i.e. "This place has been voted top quality of life in Metropolitan (because we paid for it, but our employees actually end up working 60 hrs/week most weeks)" and "Yes, I have Django experience (from my personal project I never quite finished or ever deployed)"
Here is list of compiled remote job boards.
I've never worked with a PhD software engineer, but as a data scientist, most of the people I work with have a PhD or masters. I'm the odd one out not having a degree.
And to answer your question, when I post in the Who Wants to be Hired threads I always get responses, but I've got 10+ years of industry experience, so it makes sense.
I've also worked in a couple of companies that need computational biology, biostats, etc., and I don't think any of them would be likely to reach out to people on HN.
Do you have any experience outside the university degrees? It is difficult to hire someone who has a very diverse skill set with no particular experience. You should probably focus on building a portfolio - work on some open source projects or create something on your own... Otherwise, it will be tough :)
Got one reply from someone building a surveillance apparatus for authoritarian countries. I had to say no. :(
> I got a minor in CS, MS in genetics and have been looking for an industry job for about a year now.
If you have a MS in genetics why are you applying for jr. dev jobs which primarily targets towards CS majors fresh out of school? You are at a distinct disadvantage with a minor in CS.
With your background in genetics, why are you seeking out dev positions at all? Shouldn't you be seeking lab/research positions and use your CS minor to differentiate yourself from other people with MS in genetics?
Anyways good luck with your job search, but I really don't think the "Who Wants to be Hired" is what you are looking for. Your best bet is through your alma mater/networks, professors, job fairs, etc.
Sometimes you don’t have to hit all the boxes. Knowing R would help.
Would love to help you out (even if its just referrals or advice), I know how it feels.