top | item 9515510

Ask HN: How to build quality software in a fast paced startup enviorment?

7 points| plaban123 | 11 years ago | reply

I work at an Indian startup which has crossed the valley of death and is here to stay. Now we have to maintain our software quality while still delivering software at a high pace to achieve our targets. What are some tips to achieve this?

7 comments

order
[+] davidjnelson|11 years ago|reply
One trick is focusing unit testing on code that has a lot of logic. And then also covering it with some functional tests. Integration tests are amazing but time consuming and can be less bang for your buck if you're pressed for time.

YMMV.

Also, what kind of software is this?

[+] bozoUser|11 years ago|reply
While this is easier said than done make sure you are breaking down the tasks into smaller modules with classes and unit testable methods. This test driven development may slow you down a bit and but it will provide you the best ROI(time) when you start adding more code on top of the existing code as you can run the tests and make sure the code is doing what you think it is doing and new code hasn't broken any of the old tests! Good Luck.
[+] karmakaze|11 years ago|reply
This can only work if you make quality the priority. If push comes to shove and you sacrifice quality, this will become a tech debt that you pay over and over in terms of snowball effect reduction in quality and slower delivery pace as well. On the flip side, if you sometimes deliver slow and maintain quality, you can deliver faster as the software is well designed, factored, tested: agile.
[+] andersthue|11 years ago|reply
There is this project management triangle, where each point represent quality, deadline, resources.

The theori is that if you cut resources you have to cut either quality (scope) or deadline.

So to answer your question, I would focus on quality by making sure there is resources enough - to make and to test.

[+] fsk|11 years ago|reply
If your employer no longer has a reasonable schedule and workload and expectations, it's time to consider moving on.
[+] brudgers|11 years ago|reply
That's one of the use cases for Extreme Programming.