Freigeben über


Software company vs Internet company in software engineering management

Software industry and Internet industry are tightly related two industries. Both industry enjoys very high profit margin comparing with traditional industry. The distinction between them lies within the business model. Successful software companies create widely useful software and receive payments via the licensing fees. The revenue of software companies are typically tied with the number of license sold. The most typical examples include Microsoft Windows, Office and Oracle Database, etc. 

Internet companies creates free contents/services on Internet, they only receive payment when a transaction is performed or an advertisement is viewed or clicked. The ads income is proportional to viewer traffic, the transaction fee is often tied with both the traffic and the level of engagement of the users are. Typical Internet companies include google, facebook, amazon and yahoo. 

There are companies that are in between, those cloud computing companies, many of them selling software/service via Internet. These companies are also very profitable. Typical examples include AWS division of Amazon, and salesforce.com. 

Due to the differences in business requirements, the software engineering practices are also quite different among these companies. For example, for software companies, since many of those software were written in C, ensure the software does not have memory overflow problem is of paramount importance. As a result, these software companies are heavy in quality control, they have large number of QA or SDET or tester. They write tests of all kinds, run the software in all the possible ways to try hit as many code path as possible to make sure the software reaches the quality before releasing to the customer. 

Internet companies come from a different path. These Internet companies came from startup world, where the funding are often just enough to sustain to the next round fund raising. They need to get things done, and faster. Also, many companies of this category were founded at the time compiler / programming languages are a lot more mature than before. Hence, these companies typically have a much shorter release cycle, since the client view the website via Internet, the client do not have direct contact with the software behind, the quality control is often looser.