Welcome to Networkcareer!
Where do you work and what’s your role?
I work now for Cisco Systems, as Systems Engineers, Sales
In Cisco, the Systems Engineer, Sales, is key in the sales lifecycle, because the SE is the one who discusses with the customer the detailed requirements, future plans etc. to provide the optimal solution or a road map that meet their expectations. And this should translate to a technical solution, hardware, software, licenses etc.
What kind of roles and work did you do before arriving at Cisco?
I worked in various IT roles, just like many other IT professionals I started with some IT support roles while I was studying for my Microsoft MCSE in early 2000. At that time, one day I applied for a job with an international organization and they asked me in the interview, what is the difference between “a hub and switch”? I couldn’t answer this question. However, I believe this question was a game changer for my entire career path. I went after this interview to find the answer and I ended up reading a CCNA book, then I got my CCNA and the networking fun started.
Then I worked for different IT solutions’ providers some of which are global SPs such as IBM Australia, Dimension Data in Sydney, OptusSingTel Group and BT global Services. In these companies I worked in different positions, first, I worked for a while as an implementations network engineer and then moved into consulting and architect positions.
Later, in 2015 I got the honor to become the author of the first CiscoPress CCDE book and then coauthored the CCDP Arch 4th edition with Andre Laurent.
What have you learned in your career so far that you would like to tell the younger you?
Although it is difficult to summarize it in a few lines, the following in my opinion are very important lessons I learned till now in my career path:
- If you are new in your career path, do not look at how much you earn, instead focus on the experience and the quality of the experience that you can gain at least for couple of years.
- Always try to work with talented people and more experienced than you
- Share the knowledge, with people less experienced than you.
- The more experienced you become the humbler person you should be
- Listen to others to understand and not to respond
- Learning should become a habit, not a goal.
What are the most important skills you have picked up in your career so far?
I can categorize it into two categories:
The various Routing protocols, Cisco unified communications and data center technologies are all important and key foundational skills for me to be able to design network solutions with a good understanding of how things work under the hood.
- How to listen to others’ opinions and thoughts to understand and maybe learn a new or different point of view
- How to think in a logical and structured approach
What’s your opinion on degrees? Are they useful for someone in the networking industry?
Well, this is one of the most common questions people always ask me about.
In my humble opinion, it’s not about the degree, it’s more about what you want to achieve.
For example; if you want to be a civil engineer, you don’t decide to study engineering at the beginning but you decide to become a civil engineer. Then you will go and investigate what you need to do in order to become a civil engineer; which may require you to study one year a pre-uni college then 3 or 4 years engineering at a university. This exact concept applicable to our industry any other industry in the world.
Therefore, first you need to think of what you want to be or focus on, and do not limit yourself to what you see in a job add or some employers’ jobs requirements, because what you see it as a technical skill requirement today, most probably will be different in couple of years.
However, if you build a strong foundation, you can learn new concepts and technologies easier and quicker. Not to mention, studying in a university will teach you how to work as part of a team or a group, how to research, and how to think outside of the box and be part of a community that may open different opportunities for you.
What about certifications? Are they losing their value?
Like I said above, it’s all about what you want to achieve, certifications I see it as a perfect motivation to learn certain technologies. Because you have a target to achieve, you will push yourself harder to study. Also, for more experienced people it is a good validation to the experience that they have gained. For example the CCDE certification I took it mainly as a personal challenge and validation to my design experience, and that’s why it was fun and not stressful for me.
Having said that, in my opinion certifications they have been (and will continue to be) valuable to open for you the door to get a job, BUT it will be valuable until you reach the interview day. Once you start the interview, it’s all about you: your experience and how you prove that you are capable for the job. In other words, if you take a certification, make sure you master its content in and out.
To sum it up, decide what you want to be, learn or to focus on, then find out the tools to achieve it (your tools here are the degree and/or certifications)
For example, my Bachelor degree was not related to the IT filed at all “industrial management”, then I decided to focus on IT “because I liked it and found myself enjoying it”, here the certifications became my enabling tool (MCSE, CCNA, CCNP, CCVP etc.). Later I decided to take Master degree in the IT field “Master of science in internetworking from the University of Technology, Sydney”. So when I look back I see both certifications and degrees played a key role in helping me to achieve what I wanted to achieve in my career path.
“What is your short term goal? And what is your long term goal?”
Is the skillset of network engineers changing? What skills are important to have in the coming years?
In my opinion, the required skillset of IT professionals including network engineers has never been static. An example in the early 2000 we had the shift from the TDM/analog phones to the IP Telephony systems in which the industry required new skills to build such solutions. Today we are facing something similar where we need network engineers with skillset enable them to work with application development teams to bridge the gaps to build automated and self-driving networks.
To be more specific, orchestration and automation I see it mainly impacting transactional tasks. Therefore, I believe network engineers who work in operations need to learn how to automate and mange networks using software and policy based approach rather than only box centric (CLI) based.
Similarly, for implementations engineers, working with provisioning and automation tools is an important skill to learn.
On the other hand, the skills of designers and architect, in my opinion will stay the same, as its more about the approach and design mindset no matter what technology we are dealing with. Technologies can change, but the logic and approach (not the technical design) should stay almost the same.
What skills are important for Network Architects?
The key skills for a network architect, are communication and the mindset. Although it sounds something easy, practically it is not. Because, you cannot develop the optimal communication skills and mindset as an architect, by only reading text books and articles. You need to practice it. Meeting with customers, feel the pressure of discussions that are not only technology focused and typically people have different points of view and you as the architect must lead these type of discussions.
From technology perspective, a good architect is someone his knowledge “a mile wide and an inch deep”. In other words, you need to have a good knowledge of different solutions, technologies, design options etc. but not necessarily you need to be technically deep in each of them. Because as an architect you are not supposed to go technically too deep, as you will be communicating with business people, enterprise architects, IT managers, CxOs etc.
However, having a deep knowledge and experience in one or more technology areas will be an added advantage for sure.
Please note, that the role of architect or network architect can vary based on the organization’s definition to the role, size and structure. Some large organizations like global service providers they have multiple layers as part of any solution design lifecycle (technical designer, solutions architect and chief architect)
While smaller companies, may combine these roles into one, which is the network or solution architect and this person ends up doing both the detailed design as well as the other architect roles, therefore, this architect needs to have deep technical knowledge/experience.
Will the need for networking experts go away? Is it better to be a generalist than an expert?
I think this is an open ended question. Because it’s all about what type of role you want to do, the organization you work for today or in the future, your interest etc.
For example; we know that as solution architect you should be more of a generalist, however, some organizations have a technology solution architect, in which this architect is specialized/expert in that technology or area such as data center, IoT, etc.
Also, you might see market vertical solution architect, this architect is more of a generalist in terms of technologies but he/she is focused/expert in certain vertical such as hospitality, financial services, retail, etc.
What do you think of soft skills? Do we need them in the networking industry? If so, which ones are the most important?
In simple words, I am sure you always prefer to work with someone who is cooperative, flexible and able to listen. The same is expected from you!
In my opinion, being a good listener (listen to understand and discus not just to reply) will enable you to be a good conversationalist, in turn this will encourage people to be more willing to talk and work with you.
Also it is important (but not always easy) to have an open attitude to change yourself e.g. learn new ideas, things or modify your belief if there is a better approach, plan etc. Again, this starts by listening and understanding.
With SDN, orchestration etc. can we throw the “traditional” networking knowledge out the window? Why or why not?
This is one of most important questions today.
Before we look at it from technical point of view, let’s look at it from an organizational and process point of view. When there is a technical/configuration change that must take place, typically large organizations go through what is commonly referred to as “impact assessment” process in which multiple people (depends on the origination and its process) need to assess the change, in terms of why, associated risk, fall back plan, any impact on other production systems, what technical team(s) need to be involved in such change and what technically must be changed etc.
All of the aforementioned procedures got nothing to do with automation, and these steps or procedures require input from people knows about the technical solutions in and out so they can assess and recommend. This could be any technical change e.g. changing BGP attribute, adding or changing loopback IP to the remote sites routers, provisioning virtual firewall instances etc.
After these procedures completed, automation comes into the picture to implement the change, so rather than you go manually and change 100 sites’ loopback IP address, you can have a tool or a script that can do it for you in seconds.
Similarly, implementation engineers, need to discussed, and build the design with deep understanding of how things really work under the hood (assuming you are using overlay, SDN etc.), how optimal routing should be designed, traffic engineering, traffic volume estimation, failover etc.
Automation will be only about how to apply the config to provision/build the solution as designed.
What does this mean? Simply, automation, is about automating the actual change/configurations, who does decide what need to be changed/implemented, where and why then analyze it, assess and approve? is the engineer who has the deep understanding how things work.
SDN on the other hand, personally I see it as a new approach of how we do networking, no matter if it’s using centralized, distributed or hybrid model. This model, works very well with automation discussed above.
In the end, I believe it’s about your passion and mindset, “success is a mindset”. I discussed the relation between the mindset and success with further details in this blog at the Cisco Learning Network, The Impact Mindset Has On Your Intelligence Level And Career Success.
Should someone in the networking industry learn to code? Why or why not? What is your language of choice?
The simple answer, it depends. If you work in an operation center NOC, or as implementation engineer, it is without any doubt an added advantage and maybe will become a mandatory skill to have in the future. However, I don’t believe the level of coding need to be too deep and broad like an application developer, because coding will be required to help you to use automation tools to automate repetitive tasks or large provisioning of new deployments.
As I am focused on architecture and solutions design, I am not involved into doing the automation itself, however, I started learning some Python basics and it sounds fun and simple.
What’s your best advice for staying updated in the networking industry? How do you stop the sipping from the firehose?
Simply, always read (books, articles, RFCs, Cisco Validated designs etc.). In addition, participation in events like Cisco Live, is a great opportunity to update your knowledge with the latest as well as connect with people in the industry.
Before we close out. What would you want to give as a final piece of advice to the NC readers?
Always be part of a community, and I see the best communities in the networking industry are:
Being part of these communities you will have access to a huge amount of content (discussions, group studies, recorded and live webinars, etc.), remember as part of these communities you also need to give back as well, by sharing your knowledge and experience.