Building your startup’s tech stack with Azure

Dr Ian McDonald
Microsoft Azure
Published in
3 min readNov 19, 2018

You’ve got a great idea for your startup, and a great team, but how do you go about architecting this solution? In this post, we’ll cover some of the services you can use with Microsoft Azure to help you create the foundation for building out your application’s infrastructure.

1: Adopt serverless

First thing is to keep it as simple as possible. A good developer is a lazy developer. There’s no need to reinvent things that have been solved by others, when you can focus on building out your good idea instead. Friends don’t let friends build servers.

So if you’re not building servers, where do you start? I’d recommend going with what’s called a serverless approach (it’s explained well over here with lots of pretty pictures—and who doesn’t like pretty pictures?). In particular I’d recommend starting with Azure Functions. The way that I look at code is that it’s nearly always responding to something — whether it’s a user uploading a file, a regular time interval, an update to a data record etc. All you want to do is then write the code needed to respond to that event, and that’s what serverless code allows you to do. And you don’t have to learn a new programming language; you can still use the ones you like. Serverless is a different approach, not a different language.

2: Select a database service

Now that you know about Azure Functions you’re going to want somewhere to store your data but isn’t building a database a pain? Just like I told you not to build servers, don’t go and build your own databases either. So Azure has an offering called Azure Cosmos DB that does a lot of cool things. Of course it allows global reads in many regions, but it also allows global writes in many regions at the same time which is kind of cool when your startup is aiming for world domination. You also don’t have to abandon your existing knowledge or code as it’s SQL, MongoDB, Apache Cassandra and Gremlin compatible amongst others.

Of course you can link Functions and Cosmos DB together — here’s a quick guide using the SQL API to get you started.

3: Add pre-built AI services to your app

Using some AI in your application adds value but it can also be hard if you don’t know where to start. Go over to Azure Cognitive Services and you’ll see lots of pre-built services that you can add to your application in minutes — whether it’s to understand intent or recognising objects you’ll find something that really helps your startup.

Next steps

So now that you’ve got a high level understanding of the technology how do you learn in more detail? Microsoft Learn is a great place to start — it’s a new training site that Microsoft has built that allows you to learn while actually using Azure without having to pay a penny. What’s more you can get cool badges, and who doesn’t want that? Microsoft Learn is built on top of https://docs.microsoft.com where you can also see many code examples, and even contribute back to the documentation as it’s all hosted on GitHub!

Now I know startups don’t always have a lot of money — so not only is training free but you can also start with Azure for free at https://azure.com/free/.

Additional resources

Once you’ve got the basics working, what next? There’s a few things that you might want to learn about to help you:

And here’s a few more as you grow your startup:

  • Containers — whether it’s Kubernetes or needing a container registry there are plenty of options
  • Azure Data Lake — now with Azure your object storage and big data processing can all be in the same place
  • Azure App Service — like I said earlier, who wants to run servers when you can have hosted environments?
  • Azure DevOps — you don’t want to be doing everything by hand do you?

Now go out and build something amazing!

Originally published at blog.imcdonald.com.

--

--

Dr Ian McDonald
Microsoft Azure

Work at Microsoft but my own thoughts. I'm a Kiwi, live in Twickenham and love the place. I’m autistic too.