I am currently working in a MNC/Big Corporate firm. I am planning to move to a startup and explore bigger responsibilities and roles. Please share your experience so far!
I co-founded a start-up (been on companies house UK for about 1.5 years). Not my first job. In this post I not only want to tell you what my day-to-day includes (at the end) but also what it means to work in a start-up with any tips I can remember. In addition to being a dev I'm also the Company Secretary - which is a job itself.
Honestly, I make this parallel a lot - being a part of a start up is just like relationships and sometimes more specifically sex. My general point is that no-one really has any idea what they are doing. Every start-up is different, just like every partner is. Each requiring a different level of attention, needs, affection, the list goes on. You're friends/colleagues will try and tell you how you should do it, based on their experiences and ideas. But overall, you're the one who has to make the decisions. You can take their advice, which is usually not terrible and use it to come to your own conclusions - like I said, every start-up is different, generalities (as well as other methods) won't always work. All I'm saying is be careful and not "I read this thing once, so it must be true for me, for my needs.". Proper analysis and deriving accurate and useful conclusions is half the battle of anything we do, not just start-ups.
You will be wrong. Accept it, but not afraid of it. In life everyone makes mistakes, but in a start-up you'll make more mistakes than ever before. Why? Because you'll be under more pressure, more work load, and more drive and passion than any other job.
My Short Story:
When I first started my ventures in a start-up, which I am a co-founder of and started through an "incubator" I was drastically different to what I was previously. When this all began I became quite afraid of saying the wrong thing to both my partners and to any potential clients/anyone in the outside world. This fear was manifested by wanting to succeed. I felt that if I said the incorrect thing then, not only myself, but the company would be looked on as incompetent.
Only after a year or so did I actually realise what I was doing and so stopped. It was stupid of me to think like that. But it happened and I improved myself.
Look after your home life. A start-up is not a job, it's a lifestyle. I started this venture single, and then half way through became heavily involved with my fine lady, engaged. We have had a few discussions about too much work etc. So be careful and ensure that the ones you love don't suffer because of work commitments. Find that balance.
It's not guaranteed. As with any startup there is risk- a lot of it too. It's your job to figure out what risks to take and which to pass on. A job in itself almost. So be prepared for the possibility of the company dissolving and leaving you with no return apart from one hell of a bumped up CV and a shit load of experience to go with it!
You will not be prepared for everything.
"I don't know what I don't know."
Is a statement that holds true a lot of the time in a start-up. And the things you do know you need to know you have no time to learn. So it's never a single person venture. No matter how much research you do or however many books and tl;dr's you've read. There's always more to learn. Always remember that you can't beat yourself if you made a mistake and didn't know something which would've helped. It happens. It will always happen.
Honestly, this varies so much it can't be said simply. I will however give you a run down of all the things I've dealt with over the past year: Investment documentation/legal documents, hiring developers, hiring processes, dealing with recruiters (can be incredibly frustrating), dealing with Company Secretary responsibilities and duties. Looking after an entire project, of my own creation, managing people, managing customer and clients, ensuring a good atmosphere and that junior developers feel good about working for me. SEO, and a little bit of company website management. The next one is a big one for me, mainly because it's what I'm best at - problem solving - can be any problem I'll find a way to solve it. Managing company best practises and style guides, dealing with complaints or arguments, disciplinary stuff. Looking after roadmaps and thinking long term as well as short term. Blogs, content marketing, any research that is required for anything that might come up. Going to events and expo's - pitching the company and the products/solutions on offer. Server configuration/setup/cloud management, cloud networks & security. General debugging from F12 to wireshark. Customer network configuration and customer products as well as anything else my company integrates into/with. Taking out rubbish, moving office, cleaning/DYI.
I think that covers most of it. My skill and experiences in the areas mentioned above vary but it is an extensive list so you can see why and I'm sure there'll be some I've missed off there - oh yes, I've missed off all the numerous languages, frameworks/methods that I've used and then those I've assessed for adding a return to the company.
I hope this gave you at least some insight into, at least what I get up to in my company. I think this covers most of my thoughts. If you have any further questions @ me in a comment. :)
I currently work as a developer / evangelist at GetStream.io (an API for building feeds such as Twitter and Instagram). We have offices in Boulder and Amsterdam with around ~12-15 people on staff. My primary job is to show off the capabilities of our core API (personalization, machine learning, etc.).
On a daily basis, I'll generally start off with some growth hacking by hitting up Twitter and following engineers from various companies who I think may enjoy our service. I then move over to Quora and Hashnode and answer questions (like this one). From here, I start my actual day which consists of misc. support and development of whatever project that I'm working on (currently Winds at https://winds.getstream.io – a personalized RSS reader utilizing Stream's infrastructure).
As you can see, I wear many hats and so do my co-workers. We are all technical and capable of writing code – even our CEO and Lead Designer. That said, working at a startup requires diligence and the ability to work on multiple things at any given time while staying focused (Red Bull is a must).
Overall, the job is extremely satisfying. Being able to come into work and define what my day looks like is both challenging and rewarding at the same time. At a startup, there's little delegation, as you're expected to pick up tasks when and where needed. Best of luck! If you find yourself with specific questions, don't hesitate to reach out to me directly at nick@getstream.io.
Jan Vladimir Mostert
Idea Incubator
Corporate: BA specs out your tasks, it's nicely placed in task system, you have daily standups and two-week iterations / sprints and and things are generally predictable. You have dedicated people for frontend, backend, architecture, database and generally enough developers so that you can take proper leave and an HR department who you can talk to if you're not happy with things. Company typically has a culture with flashy year-end functions and developers would start at a fixed time and leave at a fixed time in the afternoons. Things tend to move slowly in corporate and typically you have to deal with lots of red tape to get anything done.
Startup (early stage): You are the BA, you are the architect, the frontend developer, the backend developer, you do everything, even take out the trash and help wash the mugs, you make coffee / tea for other developers while also running meetings and meeting directly with clients. Your computer, to save cost, is built from old server parts and the latest flashy tools aren't available, unless you're happy to pay for it out of your own pocket. HR department is a luxury the startup can't afford, if you have a problem, you have to fix it yourself or deal with it yourself. Culture typically includes working your arse off, coming in very early and leaving late, working strange hours and generally bending backwards for the company in order for it to succeed. In startups, things move very quickly, there's no red tape to protect you from doing something and if you break something, you are responsible for fixing it.