3,660 karma · joined October 13, 2008
I like systems, tea, videogames and people.
I work on backend data microservices at Riot Games. I used to work at Nylas, and Google before that -- I also taught at Hackbright Academy.
(I am not a recruiter; I'm on the other side of the same spam, sadly. However, my partner has worked closely with recruiters and gave me a massive braindump of the space just a few days ago. Would love to hear from some actual recruiters.)
It's difficult to work with folks with 'unconventional' schedules if they are involved in cross-functional or managerial stuff. Fine if you're an individual contributor, but if you need to get a few folks in a room together frequently (project leads, etc) and their working hours have zero overlap, someone's going to get grumpy. I appreciate flexibility in schedule, don't get me wrong, but I also appreciate a bit of self-awareness :)
Coding gives you a lot of literacy beyond simply writing code to build systems; perhaps those skills could be applied in a slightly different direction, from SRE to teaching to writing a book (personally, writing's one of the things that turns into a chore when it's for money, but you might be different!).
I heard this framed pretty well last night by someone who worked for a video ads company. "We don't look for people who are bursting with passion to work on mobile video advertising. If someone came to us and said that we'd think they were pretty crazy. What we do want is people who are interested in solving interesting technical problems, and mobile video advertising just happens to have a lot of those."
http://freakonomics.com/2009/04/24/yes-part-ii/
referencing this paper "Why Susie Sells Seashells by the Seashore: Implicit Egotism and Life Decisions" http://www.stat.columbia.edu/~gelman/stuff_for_blog/susie.pd...
[1]http://www.amazon.com/Yes-Scientifically-Proven-Ways-Persuas...
[1] http://webcache.googleusercontent.com/search?q=cache:UZmmOAb...
But even then, half the joy of data science is not really knowing what you're doing at first as you research and experiment, just as your first attempt at a production system for something complex will also not necessarily be the final thing. If you have both of these at once, you can end up with a 'production' system that looks pretty well-designed and, indeed, works well enough at first -- until the product outgrows it, leading to a somewhat uncomfortable transition later on.
My personal anecdote starts with my PhD research which initially used a combination of Perl scripts, WEKA and god-knows-what-else, on fixed pre-formatted corpora, and became a Python engine powering a Django web-app using the Twitter API - not exactly rocket surgery at Google scale, but I found the whole shift in mindset from research to execution extremely useful and totally recommend to any data scientists who have focused solely on research that you try the other side of the fence, at least a little.
Stripping things down and simplifying, getting that 80/20 balance right, that's also some of the investigative fun of data science and we shouldn't get carried away with our own cleverness to ignore the poor sods who have to use the models we build years from now. I was consulting on a project which had very complex visions of a layered AI system using machine learning to make key decisions, but given the stage of the project and the depth of ML knowledge of the team, it was way easier for the initial stages to use what was effectively a switch statement on pre-defined values instead. You can always add complexity!
It's pretty easy to load up a set of data into a crowdsourcing tool and use microtasks to rate it, but my experiences doing so weren't superb (even restricting to native English speakers alone).
A better source of data is starred reviews where you have the star rating and the review itself -- these come free with a sentiment rating, although plenty of caveats around normalization. There are lots of places with review systems like this and some (like Yelp) even make the data available: https://www.yelp.com/academic_dataset
For example, they might not realise that they should be looking into the framework. They may be scared to ask stupid questions because they don't think they deserve the job in the first place. They got a bit of harsh feedback from someone who didn't take their level into account, and mentioned a whole bunch of things they'd never heard of before, and now they're running around in circles panicking. But not saying anything about it.
Obviously a lot of this boils down to "it depends on the person" and none of this may be true. But here are a few thoughts:
Take a step back and think about what the expectations are and whether those are communicated at all. Assign a specific senior developer as an active mentor, and coach them on how to give constructive feedback if they aren't very good at it (it's a growth opportunity for them). Suggest reading lists, talks, and examples of best practices - including stuff that makes working on a team smoother, like source control, etc. Pair program for the first week or two. Code reviews (as small as possible), design reviews, and even giving them less freedom at first so they get confident rather than overwhelmed. Check in frequently so you don't get a steaming pile that could hopefully have been avoided :)
You could also google around for people who have done what you want (built extensions you like) and ask them if they would consult on this project for you.
I did an executive MBA, and plan to move into people management at some point. I enjoy it and I love the feeling of empowering a team to be excellent. At the same time I feel that you need a solid base as a respected individual contributor, especially if you are leading the team technically rather than playing bug-assignment Tetris -- which is what I'm focusing on for now. Management can seem like a dirty word in engineering, but some of us like doing it.
You could become a consulting CTO for hire. Talk to some of the startups in your target group, and to non-technical founders, to understand more about what they would pay for, and what results they would want to see in order to pay the bill. For example, selling the product might not be the goal; raising investment is more likely.
For some, it may simply be coming in, assessing the state of things, making a list of recommendations, and hooking them up with full-time CTO candidates.
For others, having a technical advisor who can screen, interview and hire their future tech team is incredibly valuable.
For MVP building in the specific stage you refer to, as others have said, profit sharing isn't a particularly reliable model. The MVP may never take off, and by the time it does, they may have built a whole team and rewritten your code.
Other than content, here's one thought. What if you built up a set of talented developers who need your skills too - junior folks looking for exposure to portfolio projects, senior devs happy with a 9-5 but wanting some intellectual stimulation and to learn new techniques and technologies. Then effectively set up a MVP shop, where you manage the first stage of the 'idea to code' pipeline, but hand off the bulk of the implementation to others. Perhaps these others bill hourly and you get a cut. You can even be a broker for just introducing the two and still get a cut, though smaller.
One thought, I think that this pattern of work can be detrimental sometimes. An engineer joining a startup doesn't want to see a bunch of spaghetti code written by some consultant who is no longer around. It's often the case that she has to deal with it, but it can be a red flag of sorts. There's a whole second set of consulting needs around transforming a messy MVP which has started to show traction into a scalable, reliable product. It's uglier, harder, and therefore probably harder to find people who are truly good at it. But a lot of that may be relationship-based -- understanding what the startup leaders really want and what's working, translating that into new requirements, and keeping them happy if the work required to make it scalable is a lot more complex than it seems from the outside.
We're a seed funded startup based in SoMA helping transform how business development is done. Our network intelligence platform aggregates data about businesses and people from a number of sources to understand the movers and shakers behind professional transactions. We're building a product that users are literally begging for and dreaming about, and we need a great team to execute on the vision.
Hiring:
Product Manager - Lead our product development team to new heights. Experience with product market fit, enterprise products, API platforms and Agile required.
Backend (data) engineer - Help us get, understand, and surface new data. Experience with API processing, web crawling, Python, and designing scalable architecture required. Graph databases and machine learning a plus.
You'll be joining a fast-moving, rapidly changing startup in a space ripe for disruption, with a small, nimble team. If you can hit the ground running and thrive in the midst of ambiguity and chaos (hey, we're a startup!) then we'd love to hear from you.
At this time we are only considering local candidates. No offshore firms or new grads please.
Email your resume/linkedin and github, with a note on why this space interests you, to our CEO Falon: jobs@close.co.
Exactly the same here. The whole experience (especially the first run flow) was delightful and we immediately felt great about the decision.
Include a brief but enticing paragraph on why you are awesome. It makes it a lot easier for the "intro-er" to forward or reword it.
Be respectful of the other's time. Depending on the company and job, some people really welcome a break for coffee for a potential hire or an interesting person; others are swamped, and the triviality of a "coffee date" will be easy to turn down. Try to gauge which this is.
Coffee meetings can be take, take, take. Try to give back. Maybe you have something the other could learn?
Scientific papers are also interesting because you can use co-author relationships as a secondary graph. You could probably infer all kinds of things from that!