This article was co-authored by Ken Koster, MS. Ken Koster is the Co-founder and CTO of Ceevra, a medical technology company. He has over 15 years of experience programming and leading software teams at Silicon Valley companies. Ken holds a BS and MS in Computer Science from Stanford University.
There are 15 references cited in this article, which can be found at the bottom of the page.
wikiHow marks an article as reader-approved once it receives enough positive feedback. This article has 17 testimonials from our readers, earning it our reader-approved status.
This article has been viewed 456,904 times.
A software company develops and distributes computer software that may be used to learn, instruct, assess, calculate, entertain, or perform a multitude of other tasks. Software companies operate under a variety of business models, such as charging license fees, offering subscriptions, or charging by transactions.
Steps
Gaining an Education and Experience
-
1Develop programming and business expertise. Obtain a degree in computer science by taking programming classes in a variety of computer languages as well as business courses in accounting, finance, marketing and human resource management. If you feel you have the right skills without getting a college degree, you can get an entry-level job at a software company where you can train with a software development mentor.
-
2Work for a software company in a management capacity. Strengthen your leadership and communication skills by managing people and bringing new software products to market. Pay particular attention to the needs of end users that are not being met by other software companies, and learn product marketing processes.Advertisement
-
3Generate a product idea. Develop an innovative product idea based on what you have learned and observed about the needs of end users. Once it becomes clear that a market exists for your product idea, consider starting your own software company.
- Do a lot of market research to find out if there is any current or potential competition. Consult with experts in your field and set up focus groups to provide feedback on your idea. Your local chapter of the American Marketing Association can help with this.[1]
- Make sure your product idea is viable. Speak with experienced software developers and test out your idea to see if it is doable before making further investments of time and money. Have them sign a non-disclosure agreement (NDA) before discussing the idea.
Preparing to Launch Your Product
-
1Protect your product idea. Obtain the necessary patents and trademarks. Ask your team of collaborators, if applicable, to also sign a non-disclosure agreement.
- A template for a non-disclosure agreement can be found online.
- You may want to hire an intellectual property attorney to see if your product qualifies for a patent. Visit the U.S. Patent Office website for instructions on how to search for existing patents and how to file for a new one.[2]
- You can trademark your product by adding a "TM" symbol whenever you use your product name. A registered trademark that prevents others from using your product's name needs to be obtained from the U.S. Patent Office.
-
2Create a business plan. Write a plan that describes the purpose of your business, product, branding approach, market audience, product competition, and financial needs and plans. This is a strategic plan that will guide you in achieving your goals for the business. You can find more details about how to write a plan here, but you will want to include:
- Your business concept: The focus here is on describing your business and the market for your products.
- Market research: Market research is critical, as it describes the nature of the market you are entering into. Identify who your major competitors are, who your target market is, and the preferences and needs of your target market.
- A marketing plan: This should describe how you plan on addressing the needs of your market, how you will communicate with customers, and how you will advertise your product.
- An operations plan: This will describe your operations on a day to day basis. It would include, for example, how you plan to develop the product, a timeline, and people and equipment required.
- A financial plan: This would outline how you will finance your business, what your expected costs are, and projections as to your revenue.
-
3Determine the legal structure of your business. This will have implications for how you file taxes and how much you will need to pay. Most small businesses are sole proprietorships that are the easiest to set up and require the least paperwork. If you are considering another legal structure, you may wish to consult a lawyer who specializes in new business start-ups and who can help you pick the structure best for you.[3]
- Sole proprietorship – A sole proprietorship is owned and run by one person, and there is no legal separation between the individual and the business. As a result, all profits, losses, debts and deeds of the business are your responsibility. This option can be attractive for a small business due to its ease of formation, and due to the complete control it provides.[4]
- Partnership – A partnership simply refers to the sharing of ownership between two or more people. Partnerships are formed through the negotiation of an agreement between the partners (assisted by a lawyer usually), and each individual partner is liable for his or her share of profits, losses, or liabilities. This can be attractive if you are choosing to run the business with another person to take advantage of combined skills.[5]
- Keep in mind that each partner is generally liable for the full debts of the partnership. Partners may have to seek payment from the other partners separately if they do not pay their share of a debt. The amount of liability depends upon the terms of any loans the business takes out.
- Limited liability company (LLC) – To start an LLC, you must, at a minimum, choose a name and file articles of organization with your state, often for a fee. LLC owners pay taxes on their proportion of profits through their individual income tax returns and have to pay self employment tax, but are protected from personal liability for the decisions and actions of the company.[6]
- Corporation – An independent legal entity owned by shareholders. To register your corporation you must choose a company name and file articles of incorporation with your state. You will also need to register with the IRS and get a tax ID. Corporations file taxes separately from their owners. This may prove advantageous, allowing owners to take advantage of the corporate tax rate, but it may also lead to double taxation (which refers to your corporation's income being taxed, followed by your income from the corporation being taxed when the company pays a dividend or makes a distribution). You should speak with your lawyer or accountant to see if this form of business will benefit you. This structure is generally not appropriate for smaller businesses.[7]
-
4Register your business name with your state government, if necessary.[8] A DBA (Doing Business As) is needed whenever you are doing business under a name other than your own. Registering a DBA name is typically done through your state government or county clerk's office.[9]
- You can search the specific requirements of your state online. This process typically only takes a few minutes to complete.
- This is typically useful for sole proprietorship, since not using a DBA name means that your business name will automatically default to your personal name. Note that a DBA name is also required if you are starting a corporation.
-
5Determine if you need to get a tax identification number for your business. Corporations that must file tax returns will need one, as well as partnerships, which don’t file taxes, but do have to file business information annually with the IRS.[10] The IRS does not generally require a tax ID number for sole proprietorships (you can use your Social Security number instead).
-
6Become knowledgeable about licensing, taxes and insurance. Once you determine the legal structure for your business, research the requirements of your locality for licensing, paying sales tax and income tax, liability insurance and other requirements. Check https://www.sba.gov/content/what-federal-licenses-and-permits-does-your-business-need to see if your business needs any federal permits or licenses, and https://www.sba.gov/content/what-state-licenses-and-permits-does-your-business-need to see if it needs a state permit or license.
- There are also permits and licenses that may be required by your city or county. The best way to find out if your particular business requires any unique permits is to contact your city, describe your business, and inquire about any requirements. For example, many cities require "Home Occupation Permits", if you plan to operate a business from your home. Consult an accountant or attorney, if necessary.[11]
- It is important to have liability insurance for a software company in case your software has a bug that ruins your client's computer system.[12]
-
7Raise funds for your software company. Software development requires time and resources. Make a complete list of the start-up capital you will need to finance your business.[13]
- Explore venture capital funds. Contact venture capital firms that have previously funded software companies to discuss the possibility of entering into an agreement. Do an online search to find companies that have provided early-stage funding for products similar to yours.
- Note that you will be giving up equity in your company if you accept venture capital funding.
- Research grants and loans. Contact your local Small Business Administration office to see if you qualify for an SBA-backed bank loan. Explore the availability of funding from local universities who may be interested in financing start-up companies.[14]
- Find investors among relatives and friends. Discuss your software product idea with family and friends to explore the possibility of their investment in your business.
- Consider online funding sources such as the Lending Club and Kickstarter.[15] [16]
- Explore venture capital funds. Contact venture capital firms that have previously funded software companies to discuss the possibility of entering into an agreement. Do an online search to find companies that have provided early-stage funding for products similar to yours.
-
8Purchase the necessary equipment and applications. Equip your development team with computers, programming applications, data storage capability, servers and all of the necessary tools for creating and distributing the software. Find office space to rent using a real estate broker who specializes in commercial real estate.
- You will need to hire a freelancer to design packaging if this is a product that will be offered on a store shelf. You will also need to hire a company to manufacture the CDs, if applicable.
-
9Hire developers. When hiring developers, look for candidates who have the required programming skills and the desire to work in a software start-up environment. Consider offering key employees stock in the company.
- Advertise on job boards such as Monster.com and Indeed.com. Be very specific about the skills and number of years of experience you are looking for. In addition to knowing the right programming languages, look for those who have experience working on teams to bring a new product to market. Check all references carefully.
- Ask friends and colleagues in similar types of software industries for recommendations.
-
10Create a development time line for the product. Allot a reasonable amount of time to the development of your software product. A complicated data management system may take much longer to develop than a simple mobile phone application.
- Before creating the time line, get input from your development team and outside experts to make sure the time allotted is appropriate for the type of software you are brining to market. You want to beat any other potential competition, but you do not want to offer a product that is full of bugs because it was rushed.
- Oversee the development process. Facilitate clear communication between you and your development team to ensure that everyone is operating under the same product vision. Hold status meetings weekly to make sure progress is being made according to your timeline.
Testing and Marketing the Product
-
1Test your software product after the development phase. Establish a structured quality control and assurance process. This may involve a small team of developers testing each feature for smooth functioning on various operating systems, or bringing in new testers with fresh eyes to interact with the product.
- Write up a complete set of testing procedures and make sure all testers are following it to the letter. If steps are skipped it will not be a valid test.
-
2Gather a team of beta testers. Allow a small and select team of end users to use your product to gauge its user-friendliness, effectiveness, accuracy and/or efficiency. Then fix all bugs and retest. Finalize your product by fixing all bugs and errors, and conduct a final test to ensure quality.
- Choose beta testers from industries that you previously determined have a need for your type of software.
-
3Market your product. Hire a marketing firm or experienced marketing professionals to work for your company. Consult with such professionals during the product development process to help shape decisions about product features, uses and market audience.
- Marketing professionals should be getting feedback on product features, etc., from potential customers rather than just from the software developers in your company.
- Develop a website and a Facebook page for your company when your product is ready to launch. Provide a lot of "teasers" about what is to come and what the software will be able to do for them.
-
4Determine the price point for your product. Compare it to similar products on the market. Then decide if you want to charge via a licensing fee, a time-limited subscription or per transaction by the end user.
- Licensing fees are usually a one-time charge for the life of the product, such as purchasing the current version of Microsoft Office. A time-limited subscription would be for a specific period of time before an additional charge is incurred. This would be appropriate if you foresee a lot of upgrades being released. Per transaction would be a charge every time the customer uses the software such as at a point of sale.
Expert Q&A
Did you know you can get expert answers for this article?
Unlock expert answers by supporting wikiHow
-
QuestionWhat should my daily schedule look like?Ken Koster, MSKen Koster is the Co-founder and CTO of Ceevra, a medical technology company. He has over 15 years of experience programming and leading software teams at Silicon Valley companies. Ken holds a BS and MS in Computer Science from Stanford University.
Startup FounderMost of your day, at least several hours, should be devoted to development. Of course, you will need to have meetings with various groups of people so everyone knows what's happening and you can run the business end, but the best software companies have long stretches of time every day just devoted to development, troubleshooting, and fixing bugs. -
QuestionWhat is the estimated cost to start a software company?Community AnswerIt depends on what you want to build. If you'll be working from home, the startup costs will be much cheaper. It all depends on how many months you want a buffer for, whether or not you want an office space, where your office location is, cost of insurance, etc.
-
QuestionWhat is the average revenue if the software company does well?Community AnswerThere is no standard average revenue; it depends on your business model, customer segment, pricing structure, and more. Some software companies may never get revenue (and fail) while some companies get billions of dollars per year.
References
- ↑ https://www.ama.org/Pages/default.aspx
- ↑ http://www.uspto.gov/
- ↑ https://www.sba.gov/category/navigation-structure/starting-managing-business/starting-business/choose-your-business-stru
- ↑ https://www.sba.gov/content/sole-proprietorship-0
- ↑ https://www.sba.gov/content/partnership
- ↑ https://www.sba.gov/content/limited-liability-company-llc
- ↑ https://www.sba.gov/content/corporation
- ↑ https://www.sba.gov/content/register-your-fictitious-or-doing-business-dba-name
- ↑ https://www.sba.gov/content/register-your-fictitious-or-doing-business-dba-name
- ↑ https://www.irs.gov/businesses/small-businesses-self-employed/do-you-need-an-ein
- ↑ http://www.entrepreneur.com/article/73824#sec1
- ↑ http://www.entrepreneur.com/article/73824-1
- ↑ http://ebusiness.mit.edu/research/papers/236_Cusumano_Changing_Software_Business.pdf
- ↑ https://www.sba.gov/category/navigation-structure/loans-grants
- ↑ https://www.lendingclub.com/business/?c=9&t=GzSBP003zA001Ez1zC&utm_source=google&utm_medium=cpc&utm_term=%7Bkeyword%7D&utm_content=%7Bcreative%7D&utm_campaign=SBP003:Small%20Business%20Loans%20-%20Root&gclid=Cj0KEQiAjpGyBRDgrtLqzbHayb8BEiQANZauh2gd4pq_-UbHthkX4sH8hJaKP8bFSbt9Aoh3AA6nnqkaApE18P8HAQ
- ↑ https://www.kickstarter.com/
About This Article
If you’ve already earned a computer science degree, the best way to start a software company is to do market research and come up with an innovative product idea based on user needs. Obtain any necessary patents and trademarks to protect your product. Then, make a business plan that details marketing, operations, and financial plans. Have developers and beta testers use your product to test its user-friendliness, effectiveness, and efficiency. To learn how to determine your company’s legal structure and market your product, keep reading!