I am currently looking at job opportunities and the two most enticing are either a developer at a medium sized company or i have been offered a job at a new startup.
The money at the development company is much better but from an experience point of view im wondering if joining the startup will open up bigger oppertunities.
Up till now i have been freelancing websites and have a business degree with a major in computer science. So i havent worked as a full time developer at a company either so the experience there may also be beneficial.
Take a piece of paper (or a spreadsheet!) and write down the pros and cons for each. Weigh up which, on balance, is best for you.
Then sleep on it, and ask a friend the next day what they think. (The process of talking about it will help make up your mind. It seems that talking helps the decision making process.)
In the meantime, some things to ponder:
Good luck, sounds like a great situation to be in.
I would base the entire decision on how passionate you are about what the startup is doing. If it's not an idea you love, or if it fails, you'll be back on the job boards anyway and the stability of the other job may be a better fit.
Find out what the startup's business model is and let that help you decide. I've worked with (currently working for) a startup which is trying to do way too much, too fast, with too little resources and a desire to push junk out as quickly as possible. It's not a fun situation to be in.
Mark Suster wrote an amazing article on this very question.
Is it time for you to Earn or to Learn.
I think your decision will become a lot clearer after reading it.
If the start-up fails and you suddenly find yourself without a job, will that cause you incredible hardship, or just a minor inconvenience?
When looking at the issues, you need to look clearly at the possible risks also.
It may help to look more carefully at the start-up and determine how feasible their business plan is, are they counting on some miracle to happen, or do they have the funding to last about twice as long as they expect it will take?
Even for a medium sized company it helps to look at how well they are doing, but you are less likely to find yourself unemployed without any severance than from a start-up, if they completely run out of funding.
You may want to look at the type of people you will be working with to determine where you may learn the most.
How involved are you going to be with the design or business side? How will your work be different at the startup than at the medium sized company? Is it basically that you are expected to work ridiculous hours for a nice salary, but in the end you are just developing software, for example?
A startup can be a great experience, or it can be a very painful lesson, which one is largely going to be based on you trying to understand the issues as much as you can, and then making the decision with your heart.
(In addition of what's already posted) I would consider the possibily of joining the startup but I'd take into consideration all possible outcomes. Of course you may learn a lot more in the startup but remeber that is important to know well the founders and their commitment to their project, trust is very important.
I once worked for a startup that failed and I moved to some more 'stable' position as a 'regular dev'. Sometimes is just the rational thing to do if things are not working for anyone.
I may be wrong, but it sounds like you are too young to be chasing the money, instead of the experience. Getting paid a fair wage is definitely important, but shouldn't be the deciding factor.
First, I would suggest that you take a look at Joel Spolsky's blog, Joel on Software, and read all of his posts listed under the subheadings on the right hand side - there is some incredible advice.
Second, I would suggest that you read the amazing essays on Paul Graham's site, specifically - "What Startups are Really Like", "Startups in 13 Sentences", "You Weren't Meant to Have a Boss", and "A Student's Guide to Startups". Heck - read them all - really.
Go for startup Job. You will gain more knowledge in startup in less time. That knowledge will help you to go solo in future or you can get decent job in medium to large scale enterprise with that experience.
You are asking on a startup forum. Most of the people here are either involved in or thinking about becoming a startup. Most of this is NOT focused on being an EMPLOYEE of a startup. Bear that in mind when considering the responses.
What I would do is try to analyze
In mostly that order
I was evaluating the same decision a couple of years ago before I joined the startup I work for now.
You need to make sure you can handle the risk/uncertainty of a startup job (if you're an above average developer, this means saving 2-3 months of expenses to handle finding a new job). If you haven't planned this out, start saving right now and invest in the freedom to make better choices.
Once you've done that, you should be thinking about your career long term and how you build the most value. Startups are exciting places where you can gain greater access to new technology, very smart/talented engineers, and skills outside of a narrow engineering job description (business, product management, support, qa, etc).
Project out a year for each company and compare your resume and skills at that point. Choose whichever one is more valuable.
It depends on your long term plan and the kind of person you are! If you want to see your self owning your own IP or company i would say you should go for the startup. Of course a lot depends on the start up like the idea, people behind the idea, support from the investors etc. If the startup is strong, you should just go for it. Your journey will be much more challenging and thrilling compared to a well established company. In few words if you like challenges, ready to take risk and if you are looking for a long term benefit just go for the startup.