Through my career I had the chance to be involved in several startups or small businesses trying to create a product or digital service. However a question arises very quickly:
How to have effective working tools while minimizing the financial impact?
And by impact financial I also mean the time spent to implement, because it is time that it not spent on its core business, or more generally to create added value.
What tools are needed in a startup? It is quite simple, the same ones as in large company:
an office suite
an email system
telephony and if possible to instant and unified messaging
a collaboration space
a source code control system
a software factory (Organization, tests, deployments,…)
The big problem is thatyou cannot really use public services (try to find clients by sending emails from gmail or hotmail,…) and implementing and maintaining all these systems represents a huge cost for a startup.
What is the solution I propose?
A trio that will meet most of your needs without you ruining or losing hours implementing: Office 365 + Azure + Visual Studio online.
With Office 365 you have:
The suite Microsoft Office
SharePoint online : all that you need to collaborate internally and externally around your documents
Exchange online : a true enterprise messaging system
Lync online, instant messaging, conference calling, and even telephony completely integrated (for telephony need to add some configuration steps)
Visual studio online provides you with:
Visual Studio: more than complete development environment
Source code control system
Work planning (agile, CMMI,…)
Azure provides you with:
Lot of applicative bricks, infrastructure etc.
Integration with office 365
Integration with Visual Studio Online
Scenario: My ideal startup
It is Monday morning, the CEO and marketing manager (we all love to give ourselves important titles in a startup) join the sprint planning meeting. They sold a new feature to a large customer. They already spent Sunday afternoon to write users stories (outline of the features) and to prioritize them in TFS (visual studio online).
As CTO and with my team of developers I divide everything into tasks using demonstrations material made for the client located on SharePoint online to get more details. We are ready to code. Oh I almost forgot, as a startup, we are not often at the office, all the meeting was done with Lync online using video - conferencing.
During the week we develop in visual studio, one developer is dedicated to unit and automated tests. While I code a feature, he will develop tests that will check the functioning of it. This will ensure that no bug is introduced subsequently to another modification without us noticing.
Obviously whenever we check-in something, it is linked to the related task and we update its state. Our CEO impatient to have its functionality operational can monitor progress without having to disturb us when we code.
Every night I have a test plan that runs, it compiles the day’s work, deploys in a machine on azure, runs the tests, and saves the results. In addition I have a QA vm on which is deployed the latest stable version every week. The CEO can use it for demonstrations and manual testing and I don’t have to maintain or update this machine.
A bug despite all this? No problem, we add it and document it in TFS, I assign it to one of my developers, it is fixed and released.
Of course the production infrastructure is on azure too. If it is a simple web site/service, I use the hot swapping feature. It swaps QA version with the production one. In every case I maximize the automation of the deployment process, if necessary by using scripts. It avoids errors and it saves time.
At the end of the sprint the new feature is released and our startup has been able to focus on what is important: develop its market and its core business. Of course this is just one case scenario among others and I also during the week sent a few emails and made a few contacts/appointment using exchange online. We did that minimizing surrounding noise that makes me and my colleagues inefficient at work.
I want this for my startup!
OK ok, nothing easier. You’ll first need to buy a domain name. I recommend one of the major providers such as gandi or godaddy as office 365 will be able to automatically configure them for you. (note that you do not necessarily need the domain but I recommend it to forge your identity)
Second step order an office 365 planhttps://Office.Microsoft.com/fr-FR/business/comparer-toutes-les-offres-Office-365-pour-les-professionnels-FX104051403.aspx
If you do not know which one to choose, the second from the left for a startup will be more than enough, it provides the MS Office for PC license. During Setup, you will be asked if you have a domain. If you are client of a major provider, just give your credentials and the configuration will be done for you. Otherwise the configurations steps will be instructed to you.
In only 5 minutes you already have the same infrastructure and office suite as a multinational company for a few bucks.
We will directly go to the next step, you can create the accounts of other members of the company later.
Now connect you on manage.windowsazure.com with your office 365 account and click on ' subscribe to azure. After filling out a few information you’re ready to use Azure to build great applications.
Visual Studio online
What we are looking for is at the bottom left.
Click on new
Give a name to your visual studio online instance and don’t forget to select your directory (the one that is in fact bound to office 365).
If you already have a subscription Azure, this video explains how to use your office 365 on this subscription areahttps://www.YouTube.com/watch?v=pN0us3Zp-TQ
So now you have an infrastructure that allows you to do what I mentioned above in 10 minutes with minimal costs and configuration. Your employees use one single account for all their tools.
Feel free to explore the possibilities of online services (Azure + office 365 +…) Microsoft (or other). These are elements to take into account in your company’s strategy and which are changing the rules of the business world.
I have taken as an example a startup but be aware that my current companywww.negotium.com(150 persons) is 100% on office 365 for collaboration, unified communications and Messaging. We already use Azure for a major part of our infrastructure. And we (I have responsibility) are migrating visual studio online our software development factory.