34

It's mainly about the stability/ duration of your needs. If you know you will need a full-time person to work for you over the next years, it frequently makes sense to employ one. By employing someone directly your initial cost is higher. It includes onboarding, providing the person resources such as a laptop, etc. But the cost pays out when the person turns ...


29

In some comments, the OP has stated that I have no experience and idea about the project development needs after it successfully launched. and this is my first experience and don't know having such website application will need what requirements in future(after it launched successfully) As a first time entrepreneur, you might think that you finish ...


27

If it’s a core business function — do it yourself, no matter what. There's a wonderful essay written by Joel Spolsky called In Defense of not Invented Here Syndrome. I'll quote some of it here. Indeed during the recent dotcom mania a bunch of quack business writers suggested that the company of the future would be totally virtual — just a trendy couple ...


19

From somebody who has done both: Don't outsource to save money. Do it because you need more talent than you can find in your own location. Outsourcing requires remarkable clarity on what you want, and it requires communicating that clear vision, by documents, talks, explanations. If you outsource you need a strong product manager to keep in constant ...


12

We don't have access to business information (what kind of deal a specific user has with the company that employs us). This is the key thing. Unless you know the contractual details of a customer you can't make a decision as to how to reposed to a customers request. The obvious thing is boot the request further up your managerial tree until it hits ...


11

With no mention on my resume of not having passed the jury yet. I rarely got asked about it and never brought it up myself. So you put the degree on your resume without actually mentioning the trifling detail that you hadn't actually finished it? Well, I can't possibly see how that would come back to bite you in ass.. Now they're asking for a bunch of ...


7

Outsourcing gives you less control and even less knowledge of the people usually. The big advantage is cost and if you don't have enough ongoing work to keep full time devs productive. So the bigger the company and product line, the more sense it makes to do inhouse. Things like product or information security are factors as well. Handing your product to ...


4

I'd say only outsource if you have a very clear definition of what you want, so you can give them a specification, and you can both see and agree when it's done. If you don't have this, you'll spend more time haggling over whether something is a bug (i.e. already paid for) or an enhancement (i.e. more money) than on actual work. Another option is a ...


2

Assume you add a feature and rely on an existing function in the code, that was working quite fine until now. Your code breaks, but it breaks because the function does not do what it should do. It worked for the existing code, but it does not handle edge cases, that are needed for your code. Someone else wrote a unit test for it that does not test the edge ...


2

If you can write good code in any language, you can write good code in any language. It is true that your experience with certain technologies will help you get on board with companies who are still using those technologies. Be advised that old technologies are still more common than you may at first have thought; my company's flagship product is coded in ...


2

The golden rule: The customer is always right - if the customer pays for it. If your manager comes to you and tells you that the customer is paying for a feature or a change, and tells you to do the work, then you do it. Otherwise you don’t. Find out who in the company can make a decision whether work will be done at all, and for what price. Then when you ...


2

Pass information up, and receive decisions that come down. You should record all the client requests in an issue tracking system, but place them into the backlog (so they aren't worked on). The project manager (you should have one, of some sort, I hope) will review the requests on a regular basis, and decide which ones should be worked on. That PM is the ...


1

Start by presenting your profile to someone outside the company. You probably have no idea whether you are employable as an entry level developer or not. Your skillset could be anywhere from that of a solid junior developer to a high school kid who knows just for loops and it is difficult to tell the difference without some form of outside feedback. This ...


1

Address the Bus Factor first - give other people tasks that would normally fall within Adam's remit. Get other people in the same technical area up to speed on Adams work. Give Adam sufficient 'make work' tasks that he can't argue with this based on his availability. Once that is in place, assign tasks to Adam in exactly the same way that you assign them to ...


1

You've done everything you can. and he fears that Adam might leave the team where he criticizes Adams. Allude to the fact that this lack of clarity is bad for morale and that more team members (including yourself) might leave the team if this issue isn't taken care of.


1

Get together with your sales people/whoever manages the business side of the contracts for which you do the development. You have information they need, and they have information you need. You need to know what you should do for the clients. The sales folks need to know what you could do for the clients, and how hard (read: expensive in salary hours) it ...


Only top voted, non community-wiki answers of a minimum length are eligible