Ask YC: Software Engineering in Startups
I have been taking a Software Engeneering course at college. I gotta say, it looks like a bunch of bureaucracy that complete rips off the programmer freedom. Althought I'm kind of a newbie in the subject.
So, my question is, are software engeneering techinques often used on startup projects? If so, what kind of techniques? Is it worthed? Or is it stuff for big companies to do in order to manage all the people they have working?
7 comments
[ 5.4 ms ] story [ 32.9 ms ] threadWhat they have presented to us thus far is a lot of documents, each with a different name. You're supposed to fill each document in each stage of development, called the iterations. The teacher even showed us a table about the software development process, and according to that table coding is only a small part of it. Frankly, I always thought coding was almost all there is.
So all that got me wondering if all that bureocracy gets used in real life. After I read "you weren't meant to have a boss" I thought all that software engineering stuff related very closely to what he describes as a consequence of big companies and lots of people working together.
When you start a startup, you probably (and should) have a small team of excellent hackers, so you can get by with just doing smart and logical things instead of following so many rules.
Growing your startup and engineering team does change how small your team is, and how excellent your hackers are. Add process as needed, shake and bake.
Look at it this way. When smart people do creative and productive work, they have fun. So if software development isn't fun, something's wrong.
If it's just two people in a garage than some things aren't as necessary as others, but as you build a team you'll need all of these.
For a startup other things like UML diagrams, pair programming and etc aren't necessary.