1) Use a matching service like interviewing.io or TripleByte to get connected directly with companies. (Effectiveness: Questionable but promising)
2) Use a job listing site like Indeed.com to find positions that you're interested in applying to. (Effectiveness: It works, but is like throwing mud on a wall to see what sticks -- hard and not very lucrative.)
3) Use Indeed / AngelList / whatever to find companies that are hiring, then use LinkedIn or some other method to find the hiring manager directly. Email them directly with your resume and cover letter (since it's effectively a cold-call, make that cover letter damned impressive). (Effectiveness: works great, in my experience)
4) Use your network. Email old bosses and coworkers and let them know you're on the market. If you've left a good impression, they'll usually be more than happy to do whatever they can to get you into good companies. (Effectiveness: fantastic, assuming you have a network in the first place.)
There are tons of other ways, but those are the strategies I've used. In the mean time, study up for your technical interviews. Good luck!
I emailed any technical contact I could find at all the interesting companies in my city. I was following up all these emails with phone calls when I could get a number.
I found a blog article interviewing one of the researchers (call him Bob) at "Company A".
I sent this email that eventually led to my job:
Hello Bob,I've been researching [Company A] and came across this article from [BLOG SITE] that featured some of your work. I'm quite impressed with your assessment of the need for better data analysis tools in the [AREA OF RESEARCH], and the work you get to do in that area interests me. I found from your linkedin profile that part of your current research with the Company A Research Group is on [technical area I talk about below].
My recent PhD work at [University] involved a number of overlaps with your current work, both in technology ([short example]) and modeling physical processes ([short example]).
I am now looking for industry jobs in [City]. The Company A Research Group may be a good fit, but first I would like to learn more about what you do. Can you meet for coffee to discuss?
Best regards, -[my name]
He responded and asked for a resume. After further conversations, it turned out they didn't have room in their group (headcount freeze in their department) but we found another group at the company that needed someone with my skills. I was then "the guy Bob knows" during the interviews (which helped) and landed the job.
Look for job aggregators like Adzuna, Indeed, etc, which scrape all jobs on the web. When you see results, it should be easy to work out which jobs are posted by recruiters, and which have been posted directly by the company.
In my (massively biased) experience, you are better off applying for a position when you've been put forward by a recruiter:
* The recruiter knows what the client's salary range is, and wants you to get paid as much as possible (as the role is commission based) - they'll be able to make sure you're getting a good deal out of the client
* The recruiter is a professional sales person, and will chase the hiring manager for feedback, technical interviews, etc etc, in a way that as a direct candidate you'll come across as too pushy if you do yourself
* The recruiter will genuinely have a good view of other similar jobs you may not have found that you'd be a good match for.
* The recruiter will get much much more candid feedback about you than you'll ever get directly from the client
... and a whole bunch of other factors.
Having said that, I have found a couple of ways of finding jobs that I want:
Approach 1. Decide a company that you want to work for. Go to their careers page if they have one and then find a relevant position. Then go to Linkedin and search for "HR <company name>" in linkedin and try to find an HR contact in that company. Send them a short email that you are interested in that specific position. You never know and they may just connect you to the right hiring manager (has happened to me). BUT the trick is that you need to write effective and precise email. Don't send generic "I need a job" type of email.
Approach 2: Go to sites like indeed.com and shortlist a list of relevant jobs you like. They may not provide a direct HR/hiring manager contact but it could be a recruiter. That's ok for starters. Now take some of the keywords from that job posting and run a google search on the exact words. You may be surprised to get a direct listing from a company's career page. Now go back to Approach 1. (Done this as well)
Approach 3: The "good" recruiter can be very useful if you have found one. Then just go through them as it will be worth your time (done this as well)
Rinse and repeat.
I ask this as someone who's been dealt that card 10 times in the past few months. I've got a good idea as to what the actual reasons might be, but looking for confirmation. Thanks.
It's the same thing with searching listings on Dice or wherever, especially if you see multiple organizations posting for the same job.
I simply don't see any value add to 99% of the recruiters out there. So many of them just keyword match and are unqualified to actually vet the candidates, and give the clients terrible lists. A company's own HR department can post the listings onto Dice or do LinkedIn searches just like the headhunters do, for FAR lower cost than going through an organization.
I have zero problem with bypassing the headhunters via a bit more web searching.
Generally you probably want to work for people you like and respect. If you know some people like that, then finding out how to reach them on LinkedIn is a good way to let them know you are interested in working with them.
Sometimes they won't be interested in working with you, its a fact of life and you have to let that go. Sometimes they are open to the idea but they don't have any budget. And sometimes they will get you interviewed and move you over right away.
If you are in the "any job but this one" mode, you are at a disadvantage. If you don't know what you want to be doing then people will have a harder time knowing if you would work out well in their position. Its painful when there is a job available but you know it isn't what you really want to be doing, do you suck it up and work there because its a job? do you turn them down? Depending on your financial status it can be a very tough call.
When folks ask me "should I look for a new job?" I have two pieces of advice regardless, one is that you should always be considering new opportunities, and two you should think about what you jobs you like doing while you are not under pressure (say being unemployed) because it helps you be more honest with yourself on what you like and don't like.
Recruiters can sometimes get your name in front of a manager at a company you want to work for when you don't know anyone there. But generally their value is more to hiring managers than the people they represent.
We're working on this problem at Paysa , trying to enable employees to find and be alerted about relevant jobs that match your skillset as they become available, in your desired locations, and meeting the pay requirements that you specify.
We're also interested in helping to solve the matching and communication problem, by putting candidates directly in contact with companies that they're interested to work with - in positions that actually match their skillsets, pay their market value, and further their careers.
Check out our salary and experience based jobs search at https://www.paysa.com/jobs, and sign up to receive job alerts as we find new jobs that match your skills/experience and meet your target criteria - around location, and salary expectations.
The comments in this thread are really interesting. I'd love to hear any more feedback/thoughts about what we at Paysa could do to provide the best job matching and communication experience from the candidate side. Feel free to email at zach at paysa.com any time.
Most agency recruiters are a pain in the ass because they are not actually recruitment professionals. Sounds odd, I know, but having worked for a few firms I can tell you that many will hire SALES people rather than folks who actually want to recruit, let alone have a clue as to what the f*ck it is.
If you want to try and figure if a recruiter is going to be a tool or not, look them up or ask them what their job is. Do the do business development and account management as well as recruit? If so, ask them which half the like better. Should be a neat chat.
Bigger recruitment companies will always claim to be HR Consulting/Service firms in all their media and PR propaganda, when internally, they hammer home that they are sales companies first. I worked for one of the largest recruitment firms in the world and that is EXACTLY how they operate.
Small/mid-sized agencies tend to offer a better candidate experience because their staff aren't focused on KPIs and arbitrary activities to keep their bosses off their backs. Instead, those firms just care about closing business and doing it well so the big firms don't kick the shit out of them.
In general, most recruiters are shit. I've been headhunted more than once and man oh man has it been painful. But I've engaged in the process because the opportunity at hand was worth the nonsense. Not pursuing an opportunity because a recruiter is an idiot is cutting your nose to spite your face.
I interviewed for a position a while back where the person interviewing me at the end asked, "What firm sent you again? Was it Firm A?" when I had been sent by someone with Firm B. I'll also get contacted by recruiters from different firms for the same position.
There have also been a couple cases recently where I've been submitted for a position by a recruiter, interviewed with a company, and got a pass or didn't hear back at all. And then I'll see the position show up a couple weeks later on a site like StackOverflow Careers. I got the impression that a recruiter jumped on an opening they came across and just kind of threw me in there and the company hiring decided they weren't getting much in return for the potential money they'd be laying out. I was pretty well qualified for one of these positions, so I wondered if they wouldn't have been more enthusiastic if there hadn't been a recruiter between us.
My conclusion after about a year of working with a number of recruiters in my area (Southern California) is that the industry is dominated by a few big firms (I refer to CyberCoders as the McDonald's of recruiters, but that may be being too generous) and has a lot of turnover. I suspect they have most their success placing more junior developers in less critical let's-get-this-seat-filled kind of positions. I've come across a few that I would call real professionals. Unfortunately, they always seems to be focused in areas or locations that don't line up with my own.
I still look at a number of recruiters emails each week. But now I only respond if I am convinced that they have an actual working relationship with the company they claim to be representing and aren't just trying to win some race against the rest of the rodentalia out there.
I also put together a page on my wiki for Recruiters to which immediately I refer them any time I am contacted:
This has been helpful in quickly filtering out the most callow practitioners.
I am interviewing today with a great company, and meeting with another great company on Friday and I have a bunch of leads in the pipeline for next week. Here is my advice:
1) Figure out what companies and specific roles you want to work for.
2) Make sure you have your resume tailored to those roles and make sure you know how to answer the technical questions related to those openings.
3) Reach out to 1st, and 2nd connections to companies that interest you and ask to grab a coffee to learn more about the role.
4) If you are personable and seem like a good fit, they will ask what you are interested in and they will help make introductions. When possible, ask to meet someone else in the company closer to the role you are interested in. For example, if your friend works in sales, but you are in engineering, ask for an intro to someone in engineering. This is important because that other person will be better at vetting you.
5) You will enter the formal interview process with people already liking you and wanting you to succeed. You just walk in, have a good time and answer the technical questions.
6) Negotiate an offer.
6) When you get there, be a good person, help people out, build relationships and do great work. 5 years down the road, you will have more connections and more opportunities.
Don't make the mistake of letting leads come to you. That is how you end up in so/so companies and situations. Go after what you want.
When I am looking for a new job, I try to think about where I actually want to work. One of the core issues I have with recruiters is that I am a developer to be placed in a development role, when in reality I have a set of wants and needs in a job that I'm sometimes not even aware of myself until I read a description and see the part that sticks out like a sore thumb to me. So, my advice is don't go looking for any old job, find the company/companies you'd like to work for and check what vacancies they have. If none, pay attention to what events etc. people from that company go to and make a point of meeting them.
It might help you in finding some favorable leads.
I'm at The Muse (YC W12) - I think we have a pretty good selection of jobs as well, especially in NYC/SF: https://www.themuse.com/jobs?job_category%5B%5D=Engineering&...
Feel free to email me too if you're looking for something specific, I'm happy to help. yusuf @ our site's domain.
There are some places where they bring in a huge number of candidates, interview them, and then never hire anyone. For instance, at a local Uni, they had a position open for 2.5 yrs.
If there is a recruiter involved there is a sense of urgency at least.
With 2 of the founders being developers we can relate to the level of recruiter spam in this space and so we created Workshape.io to cut through the noise and make meaningful intorductions between developer and company based on shared requirements.
We have about 200 postings on the site right now spread across the globe, but mainly concentrated in Europe. That said though, we do cater for people seeking remote work + relocation so if you fall under that remit then you may find us even more useful.
Would love for you to check us out and would welcome any feedback.
The benefit of a recruiter is that you won't have to do the whole "meet for coffee" thing, where the company does an initial check to make sure you don't have any crazy red flags. With a recruiter, you "meet for coffee" once, he vets you (or tells you you have a big red flag), and then does your leg work.
A recruiter is also your negotiator. The money they make is dependant on your salary, so it's in their best interest to get you the highest salary possible. I suck at negotiating, so I really appreciate this aspect of recruiters.
And if you picked the right recruiter and they are open with you, they can really help cut through the bullshit that are most job postings. They'll say things like "This posting says X, but I talked to the CTO and he really just needs someone to take a functional spec and build an interface out of it".
Without a recruiter, you'll need your wits about you, lest you end up being deceived by a flowery job posting. And you'll need to have confidence and a firm understanding of your abilities so you can negotiate a good salary. You'll have to pour through job sites and you'll submit the same application form over and over and over... It's tiring.
Corporate hiring is a massive shit show and I consider recruiters to be an incredibly useful sanity saving device. People that want to deal with corporations directly, I just have to ask, why in the world would you want to do that? So annoying.
Imagine you worked in any other profession than coding. Having someone else manage your job search is an unimaginable luxury. When I talk to my non-coding friends, and they ask how many hours I've devoted to a job search, they're amazed and jealous when I tell them about my recruiter-enabled workflow.
> I'd rather talk to a company directly.
Why? What benefit do you get from that? You're not like to negotiate a higher salary than you would without the recruiter, and you're not in a better position to get hired either (over the total spend of an employee's lifespan the recruiter commission is a drop in the bucket). Some companies I've worked for place candidates they receive through external recruiters higher than self-selected candidates because they've already presumably gone through some sort of screening process.
A good recruiter will understand what you're looking for and won't put crap in front of you. That doesn't mean you'll get the perfect hand-picked job, and they'll probably challenge you on some of your assumptions, but if you're a .NET developer they're not going to try to get you to take a PHP job.
But here's how I generally go about looking for a new job:
1. Email bosses I've had who I would want to work for again and let them know I'm on the market. Just a quick "Hi _______, I wanted to let you know I'm ready for a change from my current environment. If you hear of anything I'd love to take you out to lunch and discuss the opportunity." LPT: They will buy the lunch 95 out of 100 times :)
2. Email recruiters I've used in the past and send them an updated Word resume, salary/commute requirements, and what I want v. my current job (bigger, smaller, different sector, whatever).
3. If I'm very gung ho I will go on Ladders, Indeed, etc but the above typically hasn't taken very long to find something.
I use LinkedIn as a self-advertising tool explicitly listing I am a consultant corp-to-corp which definitely reduces the amount of bullshit.
There are a lot of platforms nowadays that help to remove the "middleman" of external recruiters. Underdog.io, Hired, Vettery, InterviewJet, and others. These platforms typically are working to connect companies and candidates together directly by removing the "find and apply to each company individually" type approach. Instead they accept candidate applications, put them through their own internal approval process, and then, if selected, present them to companies to then make the decision if they want to talk to the candidates directly. In my opinion is approach is a much nicer and less stressful process for candidates.
I havent gotten a job through them, I'm still 100% through friends/excoworkers, but the process was nice and I did get offers (and a friend did land a job through them).
But as it was mentioned couple of times here: Indeed, Glassdoor, Adzuna are good places to visit as well.
Many years ago a recruiter contacted me about a job for a well known Investment Bank, we had the usual bullshit conversation and never got back to me. I applied directly and got a job.
What's wrong with this? Well, from my perspective it's now basically impossible to land a job without either knowing the people hiring (i.e. networking, something we nerds are bad at) or lining the pockets of some talentless parasite who's found a way to insert himself into a high-value transaction.
The "only work with the ones you like" argument people often respond with completely misses the point. I believe it's based upon a misapprehension of the dynamic - nerds see "agent" in their job title and assume something like a literary agent, someone with incentives aligned with their own who'll pimp them around a variety of potential employers. The truth, however, is that agents aggressively pursue companies for leads (I've been on the hiring side too and had dozens of calls a day) and some actively threaten companies ("use us or we'll poach all your staff") into using their services. The social engineering they use to navigate the corporate phone system to reach decision makers can be quite ingenious. Companies with the backbone to say no are sadly rare, so from the the applicant's side if you see a job advertised and if you want it, you have no choice but to to kiss the agent's ass for an introduction to the employer.
This rent-seeking behaviour generally nets the agent a sum equivalent to the first few months of the applicant's salary or 10-20% of their contract rate for as long as they stay there. The only real service the agent offers in return for this is spamming nerds who they'd like to apply (as happened to the OP) and weeding out obviously bad applicants to save the employer's time.
Since writing that essay I've flat-out refused to have anything to do with recruitment agencies. Internal recruiters are fine (hey, if you're hiring a lot that's totally a specialised job) but I take the use of a recruitment agency as a sign that an employer either 1) gave in to an agency's aggressive sales tactics or 2) has a reputation so poor that putting their name on job ad actively discourages the best candidates.
In short - most recruitment agencies (at least on the London scene) are dishonest, greedy, target-driven parasites. They aren't your friend and the more you feed these people the worse the market gets.
Just say no.
At the very least there should be a way to filter out good recruiters from the bad ones. I hate to say but more like a review system where you can rate your interaction with a recruiter.
You will be falsely rejected from some companies.
You will be falsely accepted from some companies.
I got my current job by applying on their jobs page.
I think the consensus in the grown-up business world is "fire immediately for cause." I would bet substantial money that when you lawyer lawyer lawyer they will advise you to do that and document the heck out of it. The calculus is really, really simple: if you don't, then you will with probability approaching one get this incident or a similar incident cited during a threatened employment practices lawsuit, and your lawyers will sigh and say "OK, settle for $250,000. You can choose to fight it but the odds are not in your favor."
I get that you feel this may cause problems for your innocent employee. If it helps you contextualize this, maybe think of it less in terms of "Our departing employee has transgressed against our innocent employee, who let me into her confidence about that" and more in terms of "Our departing employee demonstrated judgement flagrantly incompatible with professional employment."
Would you be worried about this if he had been embezzling? "I'm just telling you on an FYI basis boss but I don't want to cause social issues." That's not really how we deal with embezzlement, right. You embezzle, you get fired. Immediately. The embezzlement is not a crime against the person who discovers the embezzlement. They're welcome to an opinion on what the best course of action is, but regardless of what that opinion is, the course of action will be a swift firing.
As to messaging to the rest of the company, again lawyer lawyer lawyer, but "X made comments of a sexual nature to another employee. As a consequence, we fired him. If you have questions or concerns, speak to me later. Moving on."
Normal people tend to be cautious and respectful at first. By immidiately jumping in and pushing boundaries, this person is demonstrating that he doesn't care about your company, he doesn't care what you or anybody there thinks about him, and he doesn't care if he breaks things and gets fired.
I would fire him as soon as I could without the lawyers getting up in arms. People like this tend to be very destructive. The smart ones will wreak havoc in your organization for years before you figure it out.
I disagree with Patrick on the mechanics, subject to one condition:
If, like a sane person, you consulted a lawyer before you began hiring people, and so you're offering a standard employee agreement --- the kind every competent firm in the industry offers --- then the answer here is:
Just fire, and move on.
I don't know that "with cause" adds much.
The principle here is pretty straightforward. You got lucky this time. A new hire crossed a serious line, and the person they irritated came to you directly with a complaint, rather than through their lawyer. You will not get lucky next time. And next time, there will be a history that you'll be accountable for.
It went to HR. I got interviewed. I assume he got interviewed. He was not fired. He never spoke that way to me again. I eventually reestablished trust with this man and we got on well. I suspect he got sensitivity training. I was not told what went down. It was all handled very discreetly.
Please do get HR involved. Please do not listen to the people here who are advising you to nuke the man from orbit, it's the only way. Doing that will only deepen the problem. Men and women need to learn to interact at work. Promoting fear and loathing will not further that larger goal.
You get his side. You do some training. If it continues to be a problem, sure, fire him. But please do not use final solution/terrorist tactics. This only hurts women in the long run. Men need to learn better manners. Cutting their nuts off for a faux pas doesn't teach them that. It promotes a hostile environment between the genders. It doesn't create a more civil environment.
2. You need to assess your culture. Is this one bad apple or is this something larger. The work hard, party hard, live in the office startup culture can be a breeding ground for this. Not that you cant have this environment and succeed, but you need to understand it and put checks and safeguards in place. One option is to designate a sexual harassment rep and make sure everybody knows this persons roll and that they can talk to them, possibly anonymously.
3. Talk to your female employee and let her know you have to do something. You cant ignore it as that effects the company and thus everyone. Get her opinion about how much of a problem his continued presence in the office will be. She may not want him to be fired as she may feel partially responsible (not saying she is in any way, but we dont know how shell feel).
4. Talk to the bizdev employee. Document the meeting and any outcomes or remediation. Is this a problem of just being junior and not yet having the ability to separate barroom behavior from the work place. Why did you hire this person? Are those qualities still there and does this person have potential? Only you know.
Talk to a lawyer, but remember, you are the leader, they are not. Walk through the steps and make the tough decision about what is best for everyone. Reactionary firings can be almost as negative on your culture (not your liability though) as doing nothing. Be the type of leader who talks to their people and tries to come to a decision that is best for everyone. Dont be the leader who makes reactionary decisions behind closed doors.
Also, dont talk about kicking someones ass. As a leader, this is almost as bad as calling someone a MILF. Step back from your emotions. After a decade in the military, part of it working in legal, Ive seen a lot worse: rape, child porn, attempted murder, grand theft, fraud. While obnoxious, calling someone MILF is pretty far down on the scale. This makes it tougher in some ways since firing isnt automatically the only response.
If it's not acceptable in the company then you should tell him to leave.
If you don't you poison your culture.
The employee now knows that she will still need to "deal with" harassment at this organization. Her outlook on the company culture will be forever changed. And she will share this experience with her friends and potential recruits forever.
Likewise the harasser will know that there are not serious consequences for unacceptable behavior and will continue to "get away with" things. He will repeat the behavior among his friends and towards future staff. They may not have the confidence to report it.
This is one of the root causes of the gender imbalance in the work place.
Harassment is never ok.
This needs to be explicit and you should work hard to build a team where there is complete trust that violations will not occur.
You run a startup. A lot of people read HN in general, but I have to assume startup employees are _even more_ likely to read HN. As such, it doesn't feel crazy that one or both of these employees might see this considering it's sitting on the front page and doesn't seem to be going anywhere.
So...there is a lot of commentary here about how you should handle this situation, but in my opinion, posting pretty specific details about it publicly was among the very worst first moves you could make.
/ EDIT: I missed the part where he said that he saw the evidence - sorry.
Why I'm saying this is because I was in a similar situation once. Employee X didn't like me without me knowing. At a party (alcohol involved) we talked a little (normal things, nothing sexually, personal, private or anything like it) and that was it. On the next day I got asked into the office and have been told that multiple people filed a sexual harassment claim against me. No names who that could have been, no proof, but I was guilty.
They told me that I either have to leave the company or send a public (anonymous) apology for the bad things I did. (They didn't even tell me the things I did)
Until today I can still only guess who it was and it perplexes me that "multiple people" filed that claim against me. After talking to my better friend coworkers it seems like all people that could have filed that were friends with that one employee X that didn't like me.
Long story short, I still don't believe I did anything that could have been even remotely near sexual harassment but I'm feeling horrible. Maybe the worst memory in my entire career. Every time there is a harassment training I get reminded of what happened and that there are indeed people out there that call me a "sexual harasser".
The information we are presented with is minimal. This is perfectly understandable but it means that no one in this thread has anything like enough detail or context to make any judgement on firing someone.
What if the man was simply making a pass at someone he liked but unfortunately was clumsy and inept at doing so? Should it never be possible for a man to ask a woman from work out on a date? What if the woman has a reputation of being a social justice warrior that hates men and loves any excuse to complain about any perceived slight. We have no idea on the ages or marital statuses of the two people. What if he is a married middle aged man with three kids and she is a young intern? That makes it sound a lot more creepy. What if they are both single and the same age and seem to have the same hobbies? Does that change things a little? You cannot judge this scenario based on a couple of sentences from the OP.
My point is not to defend him, I have no idea if he is a predatory creep or a good guy that made a simple mistake. But then neither does anyone else here. Get a lawyer so you can follow a sensible policy of sitting down with the accused and ask about his side of the story. Depending on the response determines your next action.
Tell the employee that your company isn't one that believes this kind of behavior is acceptable, tell her you're going to talk to a lawyer, tell her you need to investigate this, and that she isn't causing trouble and you're glad she brought this to your attention.
Get an HR professional, lawyer or not, and deal with this immediately.
Let me assure you, when she said she doesn't want to cause trouble, she didn't mean she wanted you to do nothing. It means she wants you to do something, and she doesn't want to be blamed, she doesn't want the office to talk about it, and she wants you to own it.
If you do nothing, one day, if she (or someone else) ever decides to file a lawsuit for sexual harassment and fostering a hostile work environment against your company, you saying "but she told me she didn't want to cause any trouble" is not an excuse to sit idly by.
The employee did something wrong, no sensible person doubts that, but not necessarily something that allows you to fire them without consequences for you. You need to speak to HR and then if necessary your legal representation.
You need to sit down with her--before you do anything--and inform her you need to do something and why. Tell her you understand she came to you in confidence, but this behavior can not be tolerated. She might be able to brush it off, but the next employee the biz dev person harasses might not be so understanding and file a sexual harassment lawsuit against the company.
And if it's discovered YOU knew of his behavior and did nothing.....
I've attended a few sexual harassment training's over the years. There are no clear cut rules. In fact, in my first training, harassment couldn't occur until the other sex said "stop, no, etc." In the last one I attended, things aren't so clear cut, and it seems like the lawyers have made sexual harassment so unclear that the only ones who can determine it are the lawyers themselves.
It doesn't matter that it was after work, using a non-work communication medium. It still could be or maybe its not harassment.
You are going to have to talk with her and let her know that you have to act upon this. You don't know what is going to happen. At a bare minimum, something is going to his HR file. At worse, a lawsuit is going to happen.
Ultimately it's up to you and how you want to define your company's culture.
One thing that is really overlooked about harassment is that it's not about a single event. Realize a few things:
* She's saying that it's ok because in the real world most companies will protect the man over the woman. Women who want to get ahead learn to never put her neck out too far. All too often, clearly bad behavior will result in "training" for the guy. (After all, she was a hottie asking for it, am I right?) Do you really want accept an apology for her that it's not a big deal that she was harassed at work?
* Workplace harassment happens because most guys know they _can_ get away with it. More importantly: if this was the line cause a stir, the he'll just be more subtle next time. It's boundary testing that is no different from a four-year-old. It _will_ get around, because this guy will associate with others who don't mind his behavior. Do you really want to be known for that type of environment?
* Once the workplace accepts an event, it becomes that much harder to rationalize dealing with equal or less events. You'll have people actually arguing that Henry wasn't punished when asked Sally out, why are you punishing me? And, he could have valid precedent. Do you really want to be dealing with the fine lines between behaviors?
Fundamentally, sexual harassment erodes trust. If you have a workplace that has clear line between humor and personal relations, that creates teams who understand and care about each other: you can joke about sexual innuendo, personal problems, etc. When someone is unhappy with something, he or she feels safe to speak up. Encourage people being humble and considerate. If harassment is allowed, at best it just causes drama. At worst, it causes power problems that kill trust, brings in more people who causes problems, and the real possibility that someone could own your start up by lawsuit.
Beyond creating a potential legal liability-- the biz dev guy demonstrated poor decision quality, bad peer relationships, and questionable business acumen. All cause for performance dismissal. He caused the true breach of trust. You can leave your female employee entirely out of any discussions.
I disagree with the chorus of "Fire him now!" in the other comments; startups hire a lot of folks straight out of college, so there's a significant chance that the employee in question has never been informed of what is, and is not, appropriate when they want to pursue a romance with someone from the office. What may be acceptable in a college classroom is very different from what is acceptable in an office.
Mistakes happen, words and body language which were not included in the chat log may have been misconstrued... you have one side of the story right now. Get both sides, and give the opportunity for the man to learn.
Involving a lawyer to ensure that you're on the right side of the law is, of course, a damned good idea. Especially if you end up deciding that you want to go down the road of firing.
I think whatever solution you decide, you should keep her in the loop. You can't violate her trust if you are transparent about her with what you are doing.
As for the solution, it is easy to want to fire this employee. However, I think it would be the wrong thing to do. Many people are immature and the tech industry has given many people the wrong impression about how much of a party certain roles (sales) are. I'm absolutely not condoning his behavior, but based on the female employee coming to you in confidence and "not wanting to cause problems" it sounds like she doesn't believe he should be terminated for this.
What I think you should do is immediately document this incident. Document it well, and file it in his HR file. Tell your female employee that his behavior is unacceptable, and you are going to speak to him with HR about acceptable and unacceptable communication between employees.
Then you watch and see if he improves, and maintains an acceptable level of respect and decency while hitting his quota and contributing to the company's success. If he does not to this, then you have plenty of cause to eliminate him.
So, not during working hours, not using work-related tools, he send some inappropriate messages. It's not a big deal.
> these things aren't acceptable in the company we're building.
Sure. But this conversation did not happen in the company, not during work hours, and not using work tools. You were made privy of a very personal conversation happening between adults outside of work.
> The employee came to me in confidence
And you posted about it in great detail on Hacker News, making it a topic of water cooler conversation of about 80% of startups world-wide.
> she'll know and it will be a violation of the trust she placed in me
> So what do I do HN?
Preferably nothing at all. Don't make a big deal about what your employees do in their spare time.
> she shouldn't have to deal with it
She shouldn't have confided in you, because you can't seem to handle it. This dude is poison now. He may as well be fired. And your employee made it a business issue, which is a big thorny issue. You shouldn't have to deal with it, but now you do.
Yes it might not be appropriate and yes it might necessitate action, but fire him immediately when the "milf" handled it, ended it, and the situation was finished? He didn't push it further than his perception of her comfort level.
Furthermore, the term "MILF" has transcended its literal meaning. It doesn't, at this stage in time, literally mean "I want to fuck you". It's a normal Pop Culture term now which is synonymous with "attractive", is in every tabloid, on every reality show, blah blah. I'm not saying that it was appropriate to say it to her, but it isn't the aggressive, invasive term that is being suggested in this thread.
I can only guess that this occurred in the US; you all make it sound like a seriously stressful environment to be in.
2. Probably: fire this guy. This isnt someone you want at your company. When you fire him, you wont announce to the rest of the company why. And you can have a conversation with the victim employee to let them know why you did it: you don't want abusive people on the team, and that you value every employee and also have to look out for everyone and the entire business. The employee will respect you more for taking action, trust me.
Seriously, you need to protect your company and yourself from these things. A seemingly minor event can go nuclear on you quicker than you could ever believe.
If he denies that he sent the messages, or says he sent messages but the content has been altered where could the employer go then? "She's trying to get me sacked because ...". Where could you go from there to prove he committed an offense against propriety/policy?
Also, a perhaps more realistic issue is the move to WhatsApp could be seen as a move to personal interaction away from business interaction - if the employee alleged to have committed sexual harassment called her a milf once in a private conversation that was not a work context do they deserve to be fired?
Did he stop when asked, doesn't that mean it's not harassment? Still could be inappropriate and ultimate lead to firing but to me harassment is an ongoing series of incidents.
Don't let cancerous employees into your organization. Don't allow him to harass another one of your employees.
Apart from the "Milf" comment I don't see much in your description of events that would qualify as sexual harassment (at least not from my European view of things). Certainly unprofessional but not quite sexually harassing. As far as I understand, the transgressions were "only" verbal and there was no other inappropriate behaviour.
Here's what I would do: Collect all the facts and evidence about the BD person's inappropriate behaviour. This may involve talking to your employee about this again. Then take some quiet hours in the evening to review all of the facts. If, and only if, you come to the conclusion that the BD person's behaviour clearly qualifies as sexual harassment, get lawyers involved (and probably eventually fire).
If on the other hand you come to the conclusion that the comments were inappropriate but not sexually harassing, have a private and very serious and straight talk with your BD person about the events and that there is 0 tolerance for that behaviour, then move on. And of course fire the guy immediately if it ever happens again.
Do not talk to them, do not go into work, take sick days if you have to, don't respond to emails, phone calls, ABSOLUTELY NOTHING until you have talked it all out with your lawyer, and then do exactly what he instructs you to do.
Don't let this destroy your dream, friend! Especially over someone else's bad choices. Be safe, lawyer up, get this taken care of and move on with the work.
Other posters mention the phenomenon of avoiding interacting with women at work. The threat of "she secretly went to top brass, and I was fired without defence or cause" is exactly what might justify this.
The trust she placed in you is the trust that you'll keep her name out of this, but if she's getting someone fired, that's not ok without a more objectivity around the details. One side of the story is not objective - even is that one side turns out to be accurate, you can't know this in advance.
If you fire him for this instance, you could be sued for wrongful termination, and in which case you would have to produce those whatsapp messages, and convince your employee that they were harmful.
> He asked to take the conversation off Slack (moved to Whatsapp) and asked if they could hang out (she said, "sure as friends in work context"), referred to her as a milf (ugh...), and asked if he could tell her a secret (she refused)
My interpretation was this person used Slack (work resource) to ask a coworker to switch to Whatsapp (non-work resource), during the weekend (non-company time). He proceeded to make inappropriate comments on whatsapp.
I'm not a lawyer, but from limited research, it seems that a few sets of inappropriate text messages (of which you dont approve of, but the recipient doesn't mind) sent over the weekend does not constitute workplace sexual harassment.
The employee has said "it's not a big deal." which even though you don't like it, means it's somewhat out of your hands.
The quandry is, the bizdev person is probably a bad fit for your company. You should get rid of him, but would need something more substantial in order to standup to a wrongful termination suit.
For many high performing men, their shadow side is that they view themselves and thus, their world as objects.
That your culture manifested this sort of dynamic to me is a weak signal about deeper issues in your organization, leadership and overall company. From my vantage point, the least of your problems is how to protect yourself from the fallout of this situation legally and you may want to take a deeper look at the root cause of this, lest you begin a game of cultural wack-a-mole, firing away manifestations of a deeper cultural issue.
I don't mean this to come off as blaming you, but rather, there is an element of you in all of this that you do have control over -- some of that will be in how you handle the situation and the other will be in your understanding of the dynamics inside of you that led to you co-creating it.
Happy to gift you a culture session if you want to discuss it more deeply.
He's new. If he's still in a probationary period - either by statute or contractually - get rid of him. If he's not, and he's a brand new employee, consider adding wording to future contracts regarding a probationary period.
Obviously, still talk to a lawyer.
Fire that person immediately, it's a clear breach. You need to show your employees that you will support them when something like this happens.
This may not be the first time this has happened, might only be the first time that you have heard about it. You need to be proactive in creating a safe work environment and as the founder that is your responsibility.
If you're at the scale where a wrongful termination suit isn't an existential risk to the company, you'll get bonus points if you actually lose in court.
As an employee, I'd work on weekends & nights for a boss who has a well-adjusted moral compass and will sometimes disregard business interests to act on it.
You absolutely have to get rid of that type of person, it's already moved outside of work context to a personal context (WhatsApp), which implies that the author of the messages is not comfortable talking about what he's talking about in the context of a work environment because he knows it is wrong, and because he is willing to take that risk, it signals a danger.
You should speak to a lawyer about removing the person from the company in a quiet way (which I think is what the accuser would prefer to protect her complaint) since he is new, it's generally easier than ridding the company of a long-standing employee. Probation clauses are common in the United Kingdom, I'm not sure about the U.S. so this advice might be awfully inaccurate.
If you have seen proof, the accused needs to be removed. He is toxic if you know for sure of the correct circumstance.
We hired our first network administrator to replace developers like me who had been doing the same sort of job.
The day that he started the job, we received an email that someone using our gateway IP address had posted to Usenet [this was a while back] the IP and root password of some other company's public webserver, with a message to the effect that people should "f--- it up". The email also stated that the root password seemed to work, and we verified that.
We quickly worked out that the server was our new employee's previous workplace, and we sacked him and walked him out on the spot. He didn't receive any pay or benefits. We also documented everything on paper in case there was some legal problem (which didn't happen, of course, but you never know with some people).
So my advice is:
* Document everything. On real, physical paper. Sign and date each page.
* Fire them, now.
Even if you weren't to fire the person (and as a brand new hire firing seems a better option) then you would need to provide specifics when having the conversations that would follow. Mainly because all you have so far is an allegation, making your mind up (not the same as considering options) beforehand is not good.
Regardless of whether you fire the employee or not the key thing is to prepare for the conversation. If you're a founder speak to your co-founder(s), if you're a manager don't just speak with HR and have them in the room for the meeting but prepare with them. Have your opening statement well rehearsed, consider different conversational flows and how you might react to them. This isn't a thing to do on the fly.
An HR rep is, frankly, usually pointless, unless you have high quality HR with specialized training. They do serve as a verifying party though.
Me? I'd interview this guy (not alone) to see if I thought he could learn (as atrocious as his behavior reportedly is, I've been very surprised by what lessons have simply never been communicated). If you don't have full confidence he can improve, he's a liability to you and should go.
I'd also lead this off by talking with the female employee about what you want to do - It's not just about her (although she certainly deserves respect), but about what kind of a company you want to have - which employees are protected and which ones are not. Hopefully she'll understand.
Adults, move on.
All of you 'fire' 'lawyer' 'criminal' people are ridiculous.
It's a single word, out of work.
Imagine if two employees are dating. They are staying in each others flats. They get in a fight at work. Words are spoken. Is that harassment?
We are human before we are corporate warriors. We say and do odd things.
If you are a human leader you'll be able to handle the situation without a single thought moving forward.
Though I'd recommend putting it all in writing and documenting everything for legal purposes.
If you are a good leader, this thing will never bubble up again.
You have a product to build, focus on that.
When I first read what you wrote, I though "fire. immediately." I think I was just angry that someone would be so off the mark when they are a new hire. And the milf thing made me genuinely angry.
But as that anger passed I realized how much of a gross overreaction that is. People pursue workplace romance all the time. The thing that sucks about approaching someone is when it is welcome, you are golden, and when it is unwelcome, you are a creep. It is incredibly hard to get through an unwelcome approach without any awkwardness.
So really, this guy needs to learn manners, and to chill out.
Unless he continually repeats the behavior, I don't see why there's any real long term problem.
> made it clear that it's not a big deal and she knows how to deal with it
Last year I watched an emotionally strong friend reduced to a terrified sobbing mess before he gathered the courage to go to his leadership about a sexual harassment issue with his direct superior. I know you won't take her grace for granted but please consider that how she really feels may be different than what she says in order to maintain professionalism.
You will need to insure your company, employees and yourself are legally protected by visiting an attorney as soon as possible. As it appears you do not have the standard company guidelines and procedures in place for investigating and terminating employees found violating law. Your attorney should be able to help you draft the proper paperwork and procedures to accomplish this in your company policy and employee training.
When you talk with your attorney there may be more things that are required to do legally (filing a police report, filing charges, having the employee harassed file charges if she wants too, etc.). The attorney will be able to walk you through everything you need to do. As it may not be a big deal to your employee now, but that could change down the road, especially if it unfortunately picks up again or escalates. Now would be the best time to resolve the issue while it is only at the texting phase, as things would go downhill for your entire business quick if it were to escalate in the near future.
I hope you are able to get this sorted quickly as it is very important to have something like this in a well known zero tolerance policy that everyone knows about on their first day on the job during their on boarding process.
> I'm really upset by this guy's behaviour and I want to fire him immediately.
If you are in the US, which that u in behavior suggest that you might not be...
If you have an established HR process you have to follow it. Otherwise fire him discreetly and then let people that hes moved on in a few days. Don't tell either him or the employee that came to you that it has anything to do with their interaction and if he asks specifically during the firing process turn the tables on him and feign unawareness and ask what the hell he is talking about. I wouldn't out her or acknowledge that you are aware of the incident to him at all.If the employee who confided in you asks if that why he was fired, just tell her that its a confidential matter and you really can't go into it.I live and work in at will state and wouldn't bother to lawyer up if I went this route (though it wouldn't be a bad idea), but I would wait til I was calm enough to leak that he had done something really upsetting.
If you want to make an example out of him (or keep him around) you definitely need to lawyer up.
A dumbass like that can easily cause major problems down the line
From your critical incident report here there was no inappropriate physical contact or attempted coercion between these two people. Make sure that's correct. If your senior HR person or some other executive of your company is experienced with this (meaning: has done it before) have her/him conduct an investigation. If you don't have experience in house get your lawyer to do the investigation. Get it done; don't let it sit.
Base your decision about disciplining or terminating the guy with bad boundaries on the results of the investigation. Ask your investigator how to confront him, and follow that advice. As hard as it is to imagine right how, anti-harrassment discipline is a dish best served cold, not hot. It's also best served promptly.
You need to do the anti-harassment seminar. You need to let your whole team know this kind of stuff is not condoned or ignored in your company, because it's not who you are. Your lawyer's office can probably provide the seminar. (Our lawyers did a great job with our seminar.)
You need to establish a policy about harassment if you don't already have one. There are plenty of good template policies around. If you work with a payroll service they probably have one you can use. And you need to require all your people to take the seminar. It should be part of your onboarding process.
If you sack this guy don't worry about a wrongful termination suit. Do what's right for your business. You'll have the investigation paperwork, and the state commission on such matters will very likely look at it and say "case closed," if the guy bothers to go after you.
Also don't worry about people in your company worrying about who's going to get whacked next. Just make it clear that respect, civilized behavior, and good interpersonal boundaries are a vital part of your company culture. You could even go so far as to say "no aholes."
Good luck. But you won't need luck. You'll just need the strength to get through it, which you have.
Second of all, you need to listen to his side of the story as well. People are probably going to down-vote me for this one but taken out of context text messages don't mean very much. His friends could've played a very bad joke on him, the messages could be forged or he could've made an honest mistake.
Hell, if I were in your place I even would give the guy a second chance if he honestly apologized. But do make sure you watch him closely if you decide to take this route. These people do not tend to improve.
If so take it to them immediately.
If not welcome to lawyer hell.
This is one great things about using a co-employer, HR in a bottle.
Framed correctly, anyone in the company who hears even a rough "person was let go for a serious HR violation" (a lawyer will clarify who can hear what) will come away from the experience with increased rather than diminished confidence in their colleagies and your leadership.
EDIT to add: Also, she's not causing trouble, he is. Very simple.
As @patio11 said though. You need legal counsel.
Is this smartphone? If so, ensure its not a rooted device, where users can insert/delete things as they want.
--Let me add another view. Involve HR and talk to him first. If he admits truth then ask him to resign. If he didn't accept, listen to his version of story and ask him for proof. Then decide.
This can also apply to customers, not just co-workers.
Lawyers, good lawyers that know harassment law.
Worked for a company that had to settle a lawsuit before I started there. Management meetings every six months on this the entire 5 years I worked there, part of the settlement.
I have fired a coworker and banned a customer for this.
My former boss dated an employee who worked in a different department. People at work knew and it was not considered a problem. No one got fired or sued. I guess I'm trying to understand the difference here. It seems to me the major difference is that in this case the woman wasn't interested. So is the takeaway here that if you ask out a woman you work with she will either say yes if she is interested or you will potentially be fired if she is not?
Your employee came to you in confidence. If there is a legal way out of this that doesn't break that (maybe requires a bit of extra work), I'd chose it.
You have to realize how this could blow back on her in a big way.
But sadly I took that advice too closely to my heart. Many of my crushes ended up dating someone else at work or outside. Some even found their life partners at work. It seemed only I followed this advice. As introvert, it was hard for me to meet people outside of work context.
The guy probably had no clue that he was making her uncomfortable. He needs training, not a life time of loneliness.
If nothing else, that guy is a liabillity (and a dick).
Large companies like Intel give each employee rigorous sexual harassment training, but this is not something startups can always afford to do.
Then immediately let him go and offer him 3-4 months of severance. Generous enough that he will sign it and immediately get out of your life. Then buy a sexual harassment video course that all new hires are required to view on their first day. Good luck!
My breakdown of the reasons to terminate:
1. New employee did not follow broadly understood/legal courtship protocol with female colleague. [e.g.: On tinder/okcupid/etc., you can try your luck with "DTF?" or "You're a lovely MILF." Doing the same with a work colleague (regardless of whether on the clock or not) is broadly accepted to be harassment. Why? Because the parties are both colleagues who have to work together. On okcupid, a recipient of "DTF?" can immediately block the sender. Not so easy to do a colleague. Our legal system protects workers from harassment. "MILF" isn't just a query about going out for coffee. It is a GOTO jump over many protocol stages without ACKs from recipient.
2. New employee is either ignorant of work-based courtship protocol, new employee actively chose to disregard it, or perhaps new employee was drunk during the exchange. It doesn't really matter. Either way, the guy does not meet the standards to work in a professionally run company.
3. By so flagrantly violating a commonly understood protocol [workplace courtship] very early in his employment, the guy is demonstrating to his boss that he is not worthy of trust and responsibility. Terminate him.
As for those few of you who think the guy should be given a break, this is corporate worker bee 101 stuff. Sure he is sexually interested in a colleague. There is no problem with that. The thing that is for very good reasons, your fellow workers are protected from harassment. Dating a fellow worker requires running a very different courtship protocol than picking up someone in a bar or over tinder.
Unless you feel qualified to run corporate-dating-protocol from start to finish (what will you do post hook-up/break-up?), please consider the advice of our forebears: don't dip your pen in the company ink.
Door. ASS. Way Out. Consult a Lawyer if you feel like it.
This kind of thing doesn't get better.
The thing is if goes out of hand and for whatever reason the victim changes her mind and decides to sue you on the ground that you did nothing to prevent it you're f--cked. I've seen this before. So it's really about covering your ass and the reputation of your business. I think there are enough examples ( Github, Google ...) to prove my point.
Ouch. Office romance happens...a lot...but this guy just sounds tactless & doesn't know when to back off.
What people say and what people do are two different things, that and it could open you up to further legal issues.Talk to a lawyer, then talk to him (preferably with the lawyer).
At the very least you need to bring it directly to him.
Why do you guys jump to the extremes?
I'm not in the US lawyer up of A though, but common sense should apply.
That said, ask a lawyer first, because clearly that is the land where we get our funny 'news' of 'someone when to court because of ludicrous action X, and won'.
People who join your company later will be scared of existing employees, and probably won't report it. You can't be party to this.
So few information, but so many people ready to fire his ass.
At this point, I wonder if we should have men/women segregation in the workplace. This is the logical conclusion if you want to avoid this kind of problems.
Get that in writing, keep an eye on the situation and move on. Get rid of that person for another reason.
"it will be a violation of the trust"
Tell her that you really need to make sure there are no future problems with the team and that is why you must fire the new biz dev. He broke faith, not you or her.
In previous lives as a senior manager and litigation paralegal, I have had to deal with dozens of sexual harassment claims, including the kind that end up at the EEOC and a few that resulted in lawsuits. A good friend and former coworker is a regional HR manager for a Fortune 100 company, and he has seen everything under the sun.
OP, the only reason to do anything is because you're the founder and she brought it to you. You don't have to do anything other than document her conversation with you, but if you decide to stick your nose into it, here's what my thought process would be:
First, even if it's a small startup, OP cannot discuss with the accuser what action he takes with the accused beyond "I'll handle it." While this may baffle many here, it's really none of her business since it involves the accused's relationship with his employer. If he ends up firing the guy, she can put 2 and 2 together, but he cannot provide details of disciplinary action.
Second, he cannot announce to the rest of the employees that he fired the guy for sexual harassment, only something along the lines of "he no longer works here" with maybe some generic fluff about pursuing other opportunities. It's none of their business either.
Third, he needs to talk to the guy. "But she showed him the texts!" someone exclaims. "He called her a MILF!" That's one side of the story. Let's hear the other side before jumping to conclusions. This all happened outside the work context. We don't really know what the hell happened, only third-hand reporting of one of the participants.
Fourth, let the HR person talk to the lawyer, if OP's startup is big enough to have a dedicated HR person. If not, then yes, talk to a lawyer, but make sure they've got some litigation experience. Too many HR lawyers are just overpaid risk managers who don't have any clue of when to fight and when to fold and pay.
Which brings me to my last point: I know it may be unpopular to say, but sometimes women lie and manipulate just as well as men do.
At my senior manager job, I was accused several times of sexual harassment, even though I scrupulously avoided any kind of personal conversation that could lead to any hint of anything sexual with all coworkers, whether direct or indirect reports, peers, or superiors. I never met behind closed doors with women, except my boss, and she always left the blinds open and people felt free to interrupt at any time. And yet, I was accused. None of those accusations withstood scrutiny, but they were a gigantic PITA.
One crazy person even reported me to the FBI, after the EEOC found nothing actionable! (Seriously. The issue was that I was her last resort for altering an unfavorable survey given to her by a customer, and I refused to do so, for sound business reasons.)
Texts can be faked. We don't know enough to know whether the accuser's story is absolutely true and complete, and we certainly don't know her motives.
OP, find yourself someone with serious experience in employment law in your jurisdiction to give you counsel. Pay their fees. Stop trying to do it on the cheap by asking here, since it will do you no good and quite possibly do great harm to follow 90% or more of the advice in this thread.
Edit: added paragraph about doing nothing, and fixed "autocorrect."
Terminate. The end.
Second, if the harassed employee does not wish you to do anything, the best thing to do is to indirectly address the situation with a company-wide seminar/meeting about the topic. List off all the things this employee did that are intolerable - he'll get it really fast.
And check with your lawyer. Get a lawyer if you don't have one.
This is a no brainer.
The sad reality is that if a man makes advances towards a woman at work and she isn't interested, it is very possible he will end up being terminated for 'sexual harassment' regardless of what words he uses. Because sexual harassment effectively really boils down to any unwanted advance or even flirtation. It shouldn't be that way, it should be about actual harassment, but very few people are able to make such a distinction in a fair way.
So I don't think that in the current environment any sort of flirtation at work is really a safe maneuver unless the woman makes obvious advances first.
I have a feeling people will slam me and this comment but I haven't been downvoted very much this week so I guess it is time.
Actually it is up to her to file a complaint with you or HR. If she does not want to file a complaint, just add it to the employee's annual review that he used inappropriate words with another employee. If he is still on probation as a new employee it could violate that probation and you could fire him for that.
You have to ask yourself how valuable is this new employee to your team and company? Can he get some sensitivity training to learn not to speak that way to a female employee? If he is very skilled and valuable you might want to suggest the sensitivity training for him, if not he broke probation and can be fired for it.
You don't have to use the employee's name that he sexually harassed. In fact if you are in a state that has a no fault clause in the hiring and firing, you could fire him without giving a reason. Just say something like his position was removed due to budget problems, then create a new position to replace it with a different name.
"Team, some numbers are in. It seems our hot-milfs.xxx domain is bringing in more ad revenue than the rest combined."
I'm sorry you have had personal issues in your life stemming from your wife dealing with sexual harassment issues from the HR side, but your emotional reaction based on that experience isn't likely to be the basis for sound advice.
This means that for most of them, it must be pleasant. They must be able to joke around and even, occasionally, flirt. If you try to turn every social interaction into a perfectly professional unfriendly and unsexualised environment, you will very quickly find that you are the only one left.
This is even more relevant in a small startup.In my experience, the worst kind of work environment is a startup trying to act like a big multinational. None of the perks, but all of the soulless experience.
I have nothing against firing someone for bad behavior. However, with the little info you provided us, there is nothing serious.
Make sure the new employee knows that her colleague didn't like his approaches and that it won't happen again.
You should also try to get both sides of the story.
Finally, you did say this:
> The employee in question has made it clear that it's not a big deal and she knows how to deal with it (...)
How is she going to react if you fire his ass? Wouldn't it be acting like she can't take care of herself?
If you take that out of the picture, then talking on Whatsapp, and asking to hang out, and telling a secret, do not constitute any sexual harassment. This is particularly true if we are talking about just one conversation after which the person did not persist. Should investigate that milf comment, however.
I am rather surprised by the number of people just saying that he should be fired. Really? Showing the littlest bit of attraction and then getting shut down is not harassment. You want to take away a person's livelihood for that?
What your female employee has done is to cover her own ass in case the new male employee engages in any work-inappropriate behavior. If she comes to you again, and claims harassment, you are primed to believe her immediately and take immediate, appropriate action at that time.
Don't fire him. Don't kick his ass. Don't have a meeting with HR. Write down, "Ms. Y stated on [datetime] that Mr. X propositioned Y to upgrade beyond a work-only relationship, and Y declined. Y presented sufficient evidence to substantiate this claim." Attach a copy to both of their personnel files.
In two weeks, six weeks, and twelve weeks, proactively hold 1-on-1 meetings with all your employees, including Mr. X, and ask them if they feel as though Mr. X is assimilating well into the workplace. If no one has any complaints, even after you go fishing for them, there is no evidence of hostile workplace, and you have no further business with your employees' personal relationships.
It isn't your business to manage your employees' personal lives. It is your business to provide them with a safe, cordial, and productive work environment. It isn't your business to remediate unsavory bro-havior. I don't like how sales and biz dev tend to work in the real world, but I know that sometimes that kind of behavior is beneficial to a business. I just don't hang out with that sort of people in a social context. I prefer that their oily schmoozing be directed at potential customers, and I'm sure they prefer that I not ruin their good time with my dry-toast nerdity.
Personally, though, I would question the judgment of a biz dev employee whose first act in a new camp is to dig his latrine next to the watering hole. Aren't they supposed to cultivate new business relationships outside the company?
Anyone who calls a woman a milf to her face has NO respect for women, and will cause problems with women at the company in 1000 other small ways (and possibly big ways).
Be that guy that says he's not going to let this shit slide, and then actually follows through.
Of course the woman said she doesn't want to cause trouble... she's trying to cover her own ass to make sure that you're not going to get mad at her (yes, I'm sure it crossed her mind). She reported it to you for a reason. Because it was completely unacceptable.
Fire him. Fire him. Fire him.
And then explain to the rest of the company exactly why he was fired. And that you're not going to tolerate that behavior. You can leave out details of who and why, even white lie if there's only one woman on the team, that it was a friend or something...
If you work in a state without at-will employment, you might need to talk to a lawyer... hopefully your HR team can help you figure out the safe way to do it. But do it. Even if it's not safe. Do it because it's the RIGHT thing to do.
Created my own shortlinks that I remember when I need to lookup things on other devices.
The comments sections of most online forums are about useless and I know that places like HN don't stay this way by accident.
I actually optimize for the comments, heh. I open HN links in new tabs and then wait a day or two for the discussion to complete before reading through them. So I don't end up refreshing for new comments or re-reading the same ones.
There are a couple downsides to this though: One, I generally miss the window for participation. Two, my browser is perpetually filled with dozens of HN tabs.
Too often comment chains devolve into nitpicking, pedantry, and into off-topic discussion where two people fight tooth and nail for Internet Points.
From a technical perspective I get little or nothing from them, and from a discussion standpoint there's little reason for me to spend my time watching people nitpick each other over things that nobody in the community cares about.
>Please don't post on HN to ask or tell us something (e.g. to ask us questions about Y Combinator, or to ask or complain about moderation). If you want to say something to us, please send it to firstname.lastname@example.org.
This may not specifically fall in that category, but you may still want to email if you don't get your answer here.
We are team of two: I am sole developer and there is another person doing sales, support, training and all the rest of stuff.
Second, If you decide to create a desktop application, then make it native. I must strongly advise against using any of these "web frameworks" e.g. Electron, QTwebkit etc. to create desktop applications. They are slow, bloated and probably contain many security holes because of the huge complexity of browser engines.
They only exists because many developers don't know anything else than web development, instead of learning new skills they created this abomination. One earlier post said that minumum an i3 was required for the apps to remain snappy, think about it, that is just ridiculous especially in a time where PC's are upgraded much less frequently than they used to be. I would NEVER install an application created using a web framework.
I have good experinces with Rust and Golang when creating native applications for multiple OS.
> I have to think about the future, and so I have to try to make the right choice on this..
You don't have to make the right choice right now. For now, focus on getting something complete so that you can prove the idea out.
Choosing this tech stack lets you postpone web vs desktop app decision and keep both options open. While recurring web app revenue sounds appealing it requires servers and responsibility to secure user data. With desktop app you'll never receive a 3am call that your service is down.
Btw. Subscriptions and desktop apps are not mutually exclusive. We give both options (one-time license purchase or monthly subscription) to our customers and the split is about even.
We had no choice technically-we need to use audio APIs on Win/Mac to get our job done.
Based on my experience, I would not recommend building a desktop app unless there is a technical reason to do so.
Data storage, building installers, signing your app for target OS's, and dealing with auto-update are all technical problems that I'd prefer to avoid if I could. Building cross-platform code is also a pain and, while totally doable, will slow down a team that is not familiar with it, I think.
If I really needed to build a desktop app in the future, I'd investigate building building a headless app that hosts a websocket, and use the user's browser to connect to a localhost websocket to communicate with it. (i.e., a technical choice freeing my from Qt)
IMO, if you think you'll ever have edge cases where users might struggle to stay connected to the Web, think about doing a desktop app - but even then, consider using eg Electron/QTWebKit/similar so you can continue to use HTML.
The only situation I would shy away from using the HTML/CSS/JS approach with new general-purpose PC-centric applications is supporting older hardware - I like my apps to remain snappy, but sadly even Webkit tends to lag (generally speaking) on anything older than an i3 or so.
Do you really think users will be doing Photoshop and AutoCAD in a browser? No matter if you have a fibre op connection, the lag is always there.
Recently the main player in this domain moved to Web apps. There was an overwhelming protest from its customers, who insisted they prefer the desktop version.
Initially, it was going to be only desktop, because we were targeting big enterprises who still rely solely on phone for customer service. So, pretty backward companies. A Desktop app would have been perfect and not too "revolutionary".
But, then, we decided to not limit ourselves to that market alone, and have since made the transition to include web and even mobile solutions.
My advice is to: Stop hesitating. Write code (MVP?). Run private and open betas. Collect feedback. Make predictions. Make decisions. Maybe your market will rejoice over your desktop app and maybe they won't. The point is, you won't find out until you actually test it. If it works then that's great. Now, you can focus on marketing and growth. But if the feedback that you get points that your customers would rather get web, then that's also great. Because, now, you've gained an important insight about your customers, and will have a choice of either to switch to web (if it's a true market need (also from customer feedback)) or to start something new.
TLDR: Based on our market research alone, you CAN definitely make a living off of a desktop application; it depends on your customers, that's why it's paramount that real customers test your app asap. Don't worry about the future too much. If your desktop app is successful and somewhere along the line, customers demand a web app instead, you can always scale and adapt.
I'd add while mobile seems to be the trendy place to start a startup, most productivity apps are still easier and faster to use with a keyboard and mouse. So desktop-first can make sense sometimes.
We didn't make a living out of it because we wanted to keep it as a hobby project but it paid out well enough to be considered a small business.
I don't have any advice on whether your app should be a desktop or web, it all depends on what is the app, who your users are, where are your users using it, what are your competitors, what is easier to develop, etc.
All I can say is that desktop apps can still be profitable in recent years, but I can't say it will be profitable for your project.
It seems that his customers share a lot of characteristics with your ones.
I can't really say I'm making a "living" off of it but for a student I do have a /really/ nice income.
It's a /very/ specific application though. It swims along with the bigger fish like Open Broadcaster Service and xsplit, when they go down, I go down.
For me, a successful desktop application has the following traits:
-- A nice specific vertical that is deep and complex to process,
-- Complex entry screens with lots of necessary rules and data validation,
-- Lots of manual data manipulation during the events,
-- Substantial benefit from ability to take advantage of desktop level mouse and keyboard actions,
-- Some complex grid based screens that can be tailored by each user,
-- Fairly complex reporting after the events.
These requirements are still too much for browsers to handle well. The grid based screens are especially horrible in browsers. And browser apps are still pretty horrible for complex data entry screens that want to be customized by the user.
That said, I'm porting the first to a mixed mode where the engine will be internet based but the primary interface will still be the "normal" download and install desktop model. This is to allow some portions to be used in a browser, but the main application still keep the full desktop power.
FWIW: my original apps were Delphi based, but the language long ago stagnated and had become tedious (comparatively). Since I'd switched to .NET for contract work, I started my rewrite in C#. But but I ended up hating the server deployment crap with .NET and also of got really tired the direction Microsoft is going in general. I've now switched C# for the desktop side and Google's Go language for the web/model portion. I picked Go primarily for the trivial single executable deployment. While I don't really get much enjoyment out of coding in Go, it is eminently practical for this type of work. (Note for Gophers: I don't think Go is bad either ... just sort of there. I do use it quite a bit these day and do get the "fun vs practical" trade-offs the Go team made.)
But the future may be bleak with Microsoft moving to an app store. Why the F do I want Microsoft sitting between me and my customers. It adds no benefit to me and provides no benefit to my customers for a portable or unzip and go desktop application. Plus they, like Apple and Google, want to become effectively the worlds most expensive payment processors.
I mean look at the native mobile apps for FB and everything; I'm sure the majority of users prefer opening the apps to using the browser, so there must be something going for them.
Webapps NEVER feel as responsive or powerful or fit into the look-and-feel of a platform, compared to native apps.
To me, most of the alleged advantages of webapps just look like the excuses of lazy developers, not to mention also a bit of hypocrisy: Would YOU prefer most of your IDEs and development tools to be webapps, or native apps?
1. You can package your web app into electron or similar2. You can use a portable platform like QT or Xamarin
But more importantly, you should chose the one that will help you conclude that this is a good idea sooner. You'll probably end up rewriting the tool once you get feedback about where it rules and where it sucks.
So I'd say that unless you want to do that side project to learn something new, stick to what you know best (and what you know will work). That'll get you to the point where you can decide whether this is worth pursuing faster.
Whether to go desktop or web really depends on the application itself. Don't try and shoehorn it into one or the other. Ultimately, you'll need to find the right niche. Like in most industries, most people will fail (you usually don't hear their stories) and success will most likely not be immediate.
Doing things solo is tough so some general advice:
- You are going to be wearing many different hats but if you can afford it, contract out what you don't do well (like design, for many programmers).- You have fewer resources but also a lower bottom line. Don't expand without taking that into account, not just for the moment, but for the long term. It will affect how desperate you get with your revenue model.- Don't undercharge (especially if you go desktop). As mentioned, people still appreciate the value of desktop software.
Probably a lot more but those are the main ones plus I have support emails to deal with.
I have tested SAAS but have seen that:
* People trust a desktop app more.* People value a desktop app more as they feel they "own" it and will pay more
It is for a rather small customer group but still works great and is growing modestly.
- no update process
- support is easier, because you don't have to dig in the users specific setup
- monthly subscription model might be easier to accept for people, if they don't have the feeling of "owning" the software like with traditional desktop apps
- no multiple platforms (although people want apps, but at least, you don't have to also provide Linux and OS X versions)
- no offline mode (some people want that)
- some people want the feeling of ownership and privacy
I think as a one-man business, it's easier to maintain a web app than a desktop app.
Web Apps immediately invoke an entire side set of knowledge of sysadmin and management that, unless you're comfortable doing that - are a pain.
There are reasons to do web apps, but I don't think ease of operating or development are one of them.
Anyhow, my strategy was to make both the web app and the desktop app.
The web app is free, which drives users to the site, a small percentage of which buy the desktop app. The strategy works well, in the sense that I can run everything on autopilot for a few months at a time if I need to.
On the other hand, I sometimes feel like the relative profits are kind of low for the number of users that I have.
Rule of thumb #1: if you can build the same application for the desktop or the web, choose the web. Don't think more. My company does Windows drivers and some other operating system internals stuff that is impossible to offer as a web app and this is the reason I can't follow this rule.
My last suggestion is trying to attach your app to other revenue streams such as trainings, customization, integration with other apps, and any other service that make you escape from selling individual (and probably cheap) units of your product.
Initially I built this to archive indy music and prevent losing tracks that people removed from their soundcloud pages.
This project would require some major legal hurdles, which is why I've never really built it as a proper desktop app.
Then if you decide later you want it to be a web app its not that big of a job to convert it.
I have worked on a surprising number of desktop apps over the years, including Visual Studio and Internet Explorer. But even before that, a lot of businesses rely on desktop applications for a lot of their internal applications.
Desktop apps make you think a lot more about the release cycle and minimizing potential errors before releasing.
I agree with other people that you can mitigate the pain of bad management by doing things like 1) Write high quality code from day one 2) Automating deployment 3) Minimizing technical debt 4) Doing "spike" when asked to do something new so you don't give a bad estimate.
you don't have to practice TDD, but it is a fantastic idea to add automated tests early on when the architecture of your system is still fresh and changeable.
projects that don't consider "testability" as a requirement tend to produce system architectures that are not testable.
All this is so behind the times the waste of time and money is appalling.
Managing SSH keys, and Passwords
I created kind of a checklist of things that made the site somewhat successful @ https://news.ycombinator.com/item?id=9837727.
Some personal thoughts if you go down this path. It take a long time to build a following (think 1+ years). Make sure you get RSS feed & email list going from day one (this was a big selling point). I went down the subscription path and was making about $1-2k/month (at $14/month). That was after spending a year putting in 60 hour weeks. Transcripts and diagrams came in really handy in driving traffic to the site. Google was really helpful in building a following. Not saying it cannot be done just that you need to really love what you're doing (in that you'll want to give up before you see a return). Do not skimp on production quality. Having highly edited content with premium audio makes these worth watching (that's the differentiator from other content). Just watch railscasts.com and you will instantly see that quality vs some random youtube videos.
Burnout can also be a real thing here. You paint yourself into somewhat of a corning, in that you are charging a monthly free, for something that requires creative juices. I found there to be real pressure to produce new and exciting content, but what if it is not polished enough or up to your production quality control bar? Might be a good idea to have somewhat of a backlog so that you fall back on in the event you have writers block. I had a few episode, where I just could not write for a couple weeks, or the content was just not up to my production standards yet. You'll also find that as you progress into writing something, you'll think of a much better way to tell the story, then you'll want to re-write on a tight timeline. It was brutal having to produce on a timeline like that.
btw, I love https://sysadmincasts.com and would love to see more sites like it.
Basically find the balance between supply and demand so that most subscribers have watched all of a given uploader's past videos, while new users won't feel like they have 1000TB of old content they need to go through to catch up.
It wasn't until I read WestCoastJustin's comment (https://news.ycombinator.com/item?id=11670868) that I thought that something like this might be run as a top-down project with a chartered (for want of a better word) set of specific contributors - my initial interpretation was a social approach, where many people could upload videos and become well-known for their experience in specific areas (but still following along with a set of themes specific to your site).
What might be really cool is a system of competitions/incentives/rewards that encourage people to submit high-quality content, along with eg funding small events/hackathons/the like. That sounds like it would be a lot of fun!
Besides DevOps and infrastructure I would also highly recommend you add "enough focus on current programming languages to fully comprehend devops from the dev side of the fence" - focusing on how the engine works without driving the car and seeing the scenery will be boring :D (Translation: go maybe one or two steps beyond TodoMVC, but leave it at that. Then people's appetites have been whetted - which is kind of the idea!)
On a slightly less positive note, this concept reminds me of a service that provides screencasting services for programmers; one of the founders (who may have (had(?)) some mental health issues) who began accusing a video uploader of certain actions in a very confusing way. Not drawing any conclusions myself; the comments (go to your HN settings (username, top-right) and turn showdead on to see them all) are over here: https://news.ycombinator.com/item?id=10486476
I first learned about that service a few months before the linked events happened, and I'd initially filed the site away as something that might potentially be fun to use; I'm not sure how I would proceed to use that service now that this has happened, because I wouldn't want to be caught up in a similarly bewildering sequence of events myself.
Since DevOps is a very interesting subject to me, a site like this would fill a definite hole. I can't promise I'd immediately be able to use the site myself (for current specific reasons that may for all I know have changed by the time the site is up) - but the idea sounds really cool.
I've never seen anybody understanding the basics, who would have any troublepicking up anything that was a fad in the last ten years from itsdocumentation directly. On the other hand, I've seen Docker or Ansiblefanboys that couldn't unify accounts across dozen servers in a sensible way,despite their "modern automation" tools.
And screencasts are the second most useless way of conveying technicalmaterial (the top one being podcasts). You can't skim through the material,you can't search it, you can't copy-paste it, you can't print its fragments,it's inherently hard to navigate.
That's all I got.
Now regarding your question, your first stop should be a notary that deals in estate management, particularly somebody who deals with inheritance a lot. Through their job they come across all kinds of weird tax schemes regularly and would be up to date on the topic.
Two relevant points from my research / understanding:1) Most jurisdictions either need or like some degree of physical presence, either a client or their agent. It's not a simple 100% online solution, especially if a bank account is required.
2) There's a big difference between multi-nationals who can properly avoid taxes this way, and individuals and small businesses who get trapped by Residency (and, for the US and Eritrea, Citizenship) requirements. For someone in The US, UK, Australia, much of Europe etc, it's not as simple as running revenue through an offshore company and account to legally avoid tax. Your country of residency will generally consider that a 'Controlled Foreign Company' (CFC) and tax you as if it were a local company anyway.
My possible future plans, for example, would require moving my family to another country before I'd actually benefit from any tax reduction.
What do the lawyers that provide this do? What aspects of what they do are repetitive and manual? Can you build a service that automates just that and then sell it to the lawyers?
Then hire a team of Panama lawyers to file the documents and financial experts to manage the money that is being "hidden".
I believe the only thing you could do to automate the process is build a site like rocketlawyer.com and have people file it that way and then follow up a consultation call to walk them through the rest of the process.
Truly a thought provoking read that will give you ideas to create an immediate impact your business. Here's a podcdast interview with the author > http://www.blogtalkradio.com/waynehurlbert/2013/01/04/david-...
A fascinating story about how to build and sustain success when the team keeps changing every year. Also very interesting is how to deal with multiple personalities and get them all working in one direction.
The book is history/biography not how-to, but he makes some general observations. He emphasizes that good leaders are made possible by good followers, who are united by the same goal and recognize the leader's likelihood of reaching it. He also emphasizes that there isn't some generic talent for leadership. The talents required of a leader depend on what the goals are. So, in general, a good military leader might not be a good elected leader etc.
Leadership requires good management of oneself, and this is an excellent book on management.
I would personally be interested in social media and web analytics data. Those are the only 2 I can think of that are open. I know it's out there but something simplified would be nice instead of us having to process and store every single tweet, like, etc.
There are many other types of data that I would love but are either owned by other corporations or are too expensive for a startup.
On the other hand, it is fairly difficult data to gather - and even harder to keep up to date... it certainly falls into the class of "doing things that don't scale"
really annoying that the price on this hasn't come down yet
"No matter how you feel, get up, dress up, show up".
Go to meetups. Considering another language? Go to their meetups. No meetups for your field of interest? Start one. Join slack communities. Join local facebook groups. Help others. Like, if you know someone who wants to learn development, needs help finding a job, needs advice or similar - as long as they aren't a leach/asshole, help them, it will come back to you. Reputation matters.Learn from older developers around you. Ask questions, be polite, if you think they won't help, try their ego: "Hey, I know you're an expert on X...". As people below said, learn about marketing and sales, learn people skills, knowing that stuff is a ticket to be more than a code monkey and will make you a better entrepreneur. Speak at as many conferences, panels, talks as you can. Don't tie your identity to the company you work for. Read books by people smarter than you.Don't argue with people on the Internet, it's useless, especially on social networks.
Don't try to focus on ideas, rather train your mind to be aware of problems - big and small - around you. Take notes about problems you noticed and review those notes from time to time.
Talking to people and noticing things will let you discover true opportunities while thinking about ideas for yourself is more like a gamble: You might fluke it but it'll really be down to sheer luck.
A word about passion: Doing something you love is essential but don't limit yourself to something that you've determined to be passionate about early on. As with problems around you rather be open-minded and let passion come to you. There can be passion in the most unlikely places (I for one am quite passionate about creating boring enterprise software because there's plenty of improvement to be made in that area, particularly in terms of usability and UX)
Seriously, this is one of the best times of your life...unless you take a job that squeezes every bit of energy and life out of you. Achieving work-life balance early in your career will make this profession sustainable for you in the long run; so I'd focus on that.
Beyond that: do whatever jobs interest you at the time, live on less than you make, and don't forget to backup your work.
It's a lot harder to get back in shape than stay in shape.
I am just finishing up an audio book of Linchpin by Seth Godin. It has some great ideas in there in regards to being a remarkable artist instead of being a cog in the machine. I think this is important, especially as we are moving away from a manufacturing based economy.
The ScrumMaster is less of a PM, and more a "Servant Leader"; their role is to empower the the other team members, get road-blocks out of their way, and keep stakeholders/product-owners from butting in during a sprint.
Hope that helps.
For more info, I'd recommend starting here:
And then jumping into this book if you're really interested in the topic:
At one place I was at they were "Agile" and said they utilized "SCRUM" methods, but yet the PM's were running dev team meetings and really they were just status meetings that took a dev team of 3-4 people 30-45 minutes to get through, totally not the purpose in my opinion.
When I took over a team at that same company, I immediately took over the process and turned the meetings into roughly 10-15 minutes long where we announced roadblocks, issues and what we accomplished and were working on. If needed, we would schedule a separate time to discuss details of specific issues that needed more time. I still invited the PM's but didn't let them ask for status updates on each scheduled task or defect item. I would instead provide them a status update weekly as made sense, sometimes more often in the case of defects.
Personally, I have been part of a lot of environments even as a consultant and seen a lot of varied implementations. At least from my experience the ones that try to layer it with every possible role, and have separate scrum masters etc just aren't as successful. I personally think they miss the point. The idea is to remove layers of process to make all teams more effective, not just development. I have a feeling that the original scrum concepts were perverted by PM consultants and training courses which added back in lots of process and layers to something that is supposed to be lightweight and nimble.
IMO the ones I always see the most successful are when a technical lead is running the process, at the dev team level. And the PM or product owner is interfacing with only the team lead or maybe one person between the team lead and themselves. This removes unnecessary layers, keeps the dev team focused, and still gives great insight for the business into what is happening and makes the process pretty damn fast. It does mean that a team lead is not coding as much, they are instead focused on keeping the monkey off the dev teams back, but that is kinda the job role. In the one place, I was their Chief Software Architect (as a consultant) and I acted as the go between for team leads and the business, which worked well because the team leads stayed more heads down and I could articulate both architecture and schedule issues back to the business. That was really successful, but a little sole sucking for me.
Like everything else, this will only work if, when you demo your product, people love it and want to help you. If they want nothing to do with you, then of course all your networking efforts will be in vain.
Curious about the number of current users and their engagement, retention and growth.
That, combined with targeting angels via AngelList seems like a good combo. But it's still weird that there isn't a more obvious path. (Of course there's the YC lottery)
And my most recommended read of all, Slate Star Codex: http://slatestarcodex.com/ (Skip all the link posts and open threads; just read his essays. Superb.)
http://andrewchen.co/ Andrew Chen of Uberhttp://jwegan.com/ John Wegan of Pinterest
Probably more growth/product focused than PG and SA, but definitely give some excellent insight.
When I started working there, I really questioned his decisions about the stack and the language in general ( everything is a string )
After a few weeks I realized that, this stack was blazing fast in combination with the NAVI server which is written for high performance web sites.
This guy wrote everything you could possibly think of in TCL.
That company is powering a ton of enterprise grade e-commerce web sites.
I still see it as a secret weapon and I'd probably use it as well if there wasn't my fetish for statically typed languages.
As a side note, I'd like to mention that this guy taught me that I shouldn't go with the hype but just choose a language/framework that helps me finishing my projects.
 https://en.wikipedia.org/wiki/Tcl https://en.wikipedia.org/wiki/NaviServer
On the front-end, it has purescript-pux, which is pretty much a port of the Elm architecture. The language/community is really shaping up.
1. Requirements change frequently while the code is being developed. (If we had detailed specs, we'd be constantly re-writing them.)
2. People ask for estimates before I've had enough time to completely understand the complexity of the problem.
3. Higher-priority projects intervene, and when I go back to the original project (sometimes months later), additional time is needed to figure out what I was doing when I was interrupted.
Fortunately, my management understands that estimates are always going to slip in this kind of chaotic development environment. If we absolutely need to hit a release deadline, we usually start pushing less-critical features/fixes off to the next release. (I work on enterprise software that's sold to large companies, which has release cycles measured in months.)
2 weeks becomes 4 months.
I would say go through a few of the algorithms there and then try coding some up yourself in your favorite language. Then, once you have a feel for the algorithm I would recommend looking for literature about the algo or whatnot and see if you are able to read the math / logic behind it.
If you want to get a really solid bottom-up grounding, you could also just read all of Feynman's book on computation. His clear and crisp lecturing style is much easier reading material than e.g. Knuth or CLRS https://www.scribd.com/doc/52657907/Feynman-Lectures-on-Comp...
There, now you can call yourself a coder. Want to upgrade to "programmer" ? Check out languages that are related to the one you just learned. They'll be easy to pick up, so repeat the process. AVOID FRAMEWORKS, and just focus on the language and officially-recommended tools.
Perhaps start tinkering with a Raspberry Pi or Arduino. Learn about the differences in operating systems between Windows, Mac OS, and Linux. Get familiar with Linux -- Ubuntu is a great starting place if you're coming from a Windows background.
Make sure you understand the fundamentals of how computers WORK. In particular, experimenting with x86 assembly language will help bridge the gap between what your modern code says, and how your processor interprets the instructions. Also peek into learning things such as Discrete Mathematics (the math of logic), and State Machines and other theoretical concepts of computer science. You probably won't use this knowledge directly in the real world, but it's the backbone of all computer science... and you will have to take classes that cover this material to get a computer science degree.
I found The New Turing Omnibus to give a really nice overview of a bunch of topics, some chapters were a lot harder to follow than others but I got a lot from it.
Code by Charles Petzold is a book I recommend to anyone who stays still long enough; it's a brilliant explanation of how computers work.
Structure and Interpretation of Computer Programs (SICP) comes up all the time when this kind of question is asked and for good reason; it's definitely my favourite CS/programming book, and it's available for free online.
I'm still a long way off having the kind of education someone with a CS degree would have but those are my recommendations. I'd love to hear the views of someone more knowledgable.
 https://www.amazon.co.uk/New-Turing-Omnibus-K-Dewdney/dp/080... https://www.amazon.co.uk/Code-Language-Computer-Hardware/dp/... https://www.amazon.co.uk/Structure-Interpretation-Computer-E... https://mitpress.mit.edu/sicp/full-text/book/book.html
This teaches "What" CS is and how to think like them. Teaches you the basics, what are Algorithms & is actually fun if you really put your effort into it. Good luck!
I came to realise that you only gain grounding by working with a stack/framework/set-of-tools every day. Everything else (reading a book, etc.) is just scratching the surface.
Since you can't know everything about everything, I'd say that the best way to learn is to build something. But it's one thing to build your own CRUD test-app to learn Rails and another thing to design an app that will need to stash 20 million entries per day in a DB. The choice of the DB becomes, suddenly, a complex matter. Same if you need to handle 100.000 req/s ... You can't really learn these things on your own.
The best thing IMHO to get good grounding is to never stop learning.
algorithms and data structures are applicable to almost any language out there.
If you haven't done significant mathematical stuff by yourself (like, do all the problems in a math book by yourself without anyone else telling you what to do), go get a degree. MS in CS is probably best, those are surprisingly easy to get into.
Otherwise, Haykin's Neural Networks and Learning Machines is best in my opinion (http://www.amazon.com/Neural-Networks-Learning-Machines-3rd/...). Bengio's Deep Learning book is the most current by far (http://www.deeplearningbook.org/). Otherwise, you read papers.
Note that all of these will deal nearly exclusively with the mathematics. Otherwise, you are following tutorials and wouldn't need any actual knowledge to do things. Some of the mathematics is a year old: some of the mathematics is 50 years old, some of it has been around since Gauss.
As the interest rate fell from 14% in 1981, to roughly 0% today, and mortgage rates fell from ~20% to ~4%, people could afford to pay more and more, comfortably or otherwise, for their homes, and because often people buy the biggest house they can afford as a proportion of their monthly income, the maximum people can pay will continue to rise as interest rates fall. This drives house prices upwards.
As house prices rise upwards, all homeowners will have increased equity-debt ratios, giving them additional collateral to further pledge their houses to increase the amount they can borrow to spend on more properties. It is a pro-cyclical effect on house prices.
You can only raise prices if you can find buyers who are willing to pay. If you used this pricing model as a real estate agent you would find yourself completely unable to sell houses pretty quick if, for example, people started moving out of the area. In that scenario there would be more houses for sale than buyers, and the real estate agent with the lowest price is the one who will actually get the sale (and if youre still increasing prices that agent wont be you.. you'll be going out of business).
This is why people cant increase prices forever - you have to lower your prices if the buyer has a lot of good alternatives to buying your house.
To influence the price of housing you need to increase the number of good alternatives for buyers. You can do this by driving people out of the area (lame), or you can build tons of housing.
This is all based on one of the fundamental ideas of modern economics, the supply and demand model.
The main problem is that the 6% reduces supply liquidity, which means there are less houses for sale than there would be otherwise. Owners know they cannot get back in easily at breakeven, due to the immediate 6% hit. That means when the market is hot, there is a tendency to hold on until it's not. This means the full extent of "affordability" is a more probable event.
It doesn't work on the flip side when times are bad, because buyers have no such penalty. Whereas sellers are going to sell either because they believe prices will get worse, or are forced to due to finances.
If there's high demand and low inventory, agents will naturally up the price. Supply and demand.
2. Interest rates (when they are low) promotes more ownership
3. Federal/ State intervention : Promoting more people to own homes even if they can't afford to (or their job is high risk).
4. Low unemployment
5. Fannie Mae & Freddie Mac artificially propping housing prices by not releasing the million + mortgages they have on their books.
6. Terrible software that depends on humans being able to understand what prices should be for a home, while using antiquated ideas as to what a home price should be given "comps" and not supply of housing.
7. There are so many factors that if you're truly interested... Read a book called Housing Boom & Bust by Thomas Sowell. :)
1) On average in my jurisdiction, people sell their houses once every 10 years. So the 6% Fees would account for only (6%/10 = 0.6%) annual growth, not the whole 6%.
2) You could compare this to an area where agent fees are much lower. For example, most of my real estate industry experience is in Queensland, Australia where until last year Agent Commissions were capped at 2.5%. If your theory were correct, we would have seen growth rates closer to 2.5%, when in reality they average about 6-8% per annum here as well.
I like your thinking though!
One the interest rate point.
Think back to the 1980's if your mortgage had 10% interest, how much could you afford to buy? On the flip side, if your a seller how much could you sell your house for with 10% interest rates.
There was some figures out there that stated something along the lines that for every increase in interest rate by 100 basis points, there is a ~14% decrease in the price a buyer can afford.
Even the current average tech worker wage at good companies will make buying a home on your own fairly impossible. Forget buying if you are someone who works a normal type job.
A house selling for 250k in a decent neighborhood in 2000 has jumped to 850k in 2016.
My recommendation is either the first or the last.