Thinking of going into Cloud Architecture

Kdes

Well-Known Member
Joined
Aug 21, 2007
Messages
158
Reaction score
3
Hi All

Been really thinking of going into Cloud Architecture, have a little experience on Azure. My background is mostly support and infrastructure.

Been reading online about the requirements of being a Cloud Architect and seeing sources saying you need knowledge in, Networking, infrastructure, security, storage and programming.

Wanted to ask the guys already in the field of Cloud Architecture.
Does one need to be an expert in all these fields?
Should one have advanced knowledge in a programming language or will basic be fine?
What is your main responsibility and day to day duties?

Thanks
 
From a programming point of view, I would say you need to be able to do advanced scripting and automation. So you need a fundamental understanding of algorithms, logic etc. I don't think you need to be a hardcore coder.
 
I have a bit of experience using power shell to automate tasks. Which is great news to hear. I don't have extensive knowledge in python for example.
 
They are not wrong.. the programming part is the least important one but, having advanced scripting would be beneficial..

The reason they say knowledge in all those fields (note, they don't say degrees and seventy thousand years experience) is that the cloud and cloud based solutions compromise all those fields to deliver services..

If you are going to be helping a company setup their cloud infrastructure, they would more than likely need to make use of cloud services compromising all of those fields..
 
Hi,

Does one need to be an expert in all these fields?
Not an expert but you need to know how they all work as individual parts, and then how they all fit together. This is critical when you're a solutions architect in the field of Cloud Computing. Factor in hybrid cloud, and it applies to on-premises hardware and configurations as well.

Should one have advanced knowledge in a programming language or will basic be fine?
If you're going to be using Azure's built in scripting tools and CLI, then you need to know how it all works, along with PowerShell (as you can do a lot of automation for the cloud using that). Something I desperately need to work on to be honest, but my personal feelings are that a working knowledge should suffice. Your job, as a cloud architect, is not to design the scripts, but rather create the solution for the client and let the project engineers do the rest.

What is your main responsibility and day to day duties?
Consulting with clients and getting to know their environment, how they see their roadmap playing into cloud, and then designing the solution around that; keeping up-to-date with the cloud technologies and hyperscalers, whilst also keeping abreast of what companies like HPE, DellEMC and Nutanix are doing around private/hybrid cloud.

In terms of your skills, that's a start. The Azure exams (and I have written them!) rely on you knowing your way around the Azure portal for instance. And the high-level exams are VERY tough.
Look at A Cloud Guru, Pluralsight and Udemy for the online courses. They apply to Azure, AWS and GCP equally. Get free accounts for the platforms and play around with them so you know them. Then read...read, read, READ!
Other certs to back you up would be Network+, Cloud+ etc to get a generic insight into it all.

Thanks!
 
No need to master everything
I have experience in different Tech Stacks , enough knowledge to know how to navigate
Integration
Development
Mobile Development
DevOps - Cloud
etc
 
I work in an environment where we host servers in basically 30+ locations globally and each time must maintain their own servers and software.

From that the most important things, operationally are (in order):
Metrics & dashboards
Logging for when something goes wrong.
Logging that doesn't require going on host and is searchable with request-ids is a HUGE plus

Automation is a must. You just simply can't run a fleet of 1000+ servers and not automate. Not only would automation beat your army of technicians doing it manually (because of repeatability and not making mistakes) but because of the pure time cost.

Good automation requires software development skills IMO, you can get away with scripting. Would say bash & either ruby/python is a must.

Can't say for Windows because frankly only a masochist would host a fleet of windows servers

In terms of ops for an event where something has gone wrong
Bash bash bash.
curl, grep, dig, wget, find, sed, awk are your friends. I know them like the back of my hand and because of this, I'm able to solve operational issues in seconds that others with strong technical and programming skills take hours to solve (simply because they don't know how to use those tools to solve once off problems and resort to scripts or Python etc. when those tools are sufficient).

cat | grep | grep | grep | tr; piping etc. are things you need to be really comfortable with as a dev-ops operator.

That said, I consider myself mediocre at dev-ops, I'm a stronger software engineer. There are others in my company that just do dev-ops and they can hack those pipes together and know a little bit about most processes (eg. mysql, etc.) that gives them a huge leg up operationally.

Networking knowledge is critical. Many number of times we've run into issues where the small things like MTU, bad A records (cached by DNS relay), etc. caused issues. Know how DNS works, it is critical, you should understand dig well. DNS Relay vs DNS Resolver. How DNS amplification attacks work will give you some good things to dig into to understand DNS.

Understand how SSL certificates work. You need to know what a CN, SAN, etc. is. How does a DNS name and SSL certificate fit into the picture.

What is the difference between ARPing, TCP Ping and HTTP ping. ie. ping at different layers of the OSI stack. It can help you find where in your network stack the problem is. ie. if your server doesn't even respond to APR request no point looking at the web-server.

Networking is like half of what the world is about now.
 
Last edited:
Some confusion here.

There is a distinct difference between an architect and infrastructure implementation.

The architect is responsible for defining the artifacts and verifying that the standards described therein are being complied with. An architect will present new architecture artifacts/blueprints to the ruling body for sign-off, following which these will be communicated to the various teams responsible for implementation.

An architect does NOT require scripting skills of any sort. That's not an architect.

An architect *does* require a broad range of knowledge and experience in PaaS/IaaS/etc.
 
Some confusion here.

There is a distinct difference between an architect and infrastructure implementation.

The architect is responsible for defining the artifacts and verifying that the standards described therein are being complied with. An architect will present new architecture artifacts/blueprints to the ruling body for sign-off, following which these will be communicated to the various teams responsible for implementation.

An architect does NOT require scripting skills of any sort. That's not an architect.

An architect *does* require a broad range of knowledge and experience in PaaS/IaaS/etc.
Maybe not, but it's good to know. You'd be surprised how many clients will ask about cloud automation tools, and as an architect, it helps to be able to both articulate the tools, and maybe offer personal information on how it all works.
And besides, nothing against learning a new skill or 2.
 
Top
Sign up to the MyBroadband newsletter
X