Tina has been in IT for a while. She started in software development and went back and forth through infrastructure design. In IT, you have to keep reinventing yourself. Tina had to do it when looking for opportunities after her time at GE. She managed infrastructure at GE. With the move to the cloud, companies aren’t looking for people to manage data centers so much anymore. As part of the constant change in IT, new jobs appear and others go away.
Some people can make this change more easily than others. If you are in a company that hasn’t moved forward in technology, this can be more difficult. Tina has agile experience, but these days companies are looking for scrum masters instead. You need to find the opportunities for the next thing you can do and the opportunities to do things like DevOps if you are a current agile or infrastructure person.
DevOps is where software developers are in charge of getting their servers built in the cloud vs. an infrastructure person setting up a local server That is a simple example of the need to shift from being an infrastructure person and getting more into a software DevOps mentality. Even if you have the background in one area like infrastructure, you need experience in the latest greatest field. DevOps is big right now and it’s a merge between development and operations. Automation is what makes DevOps so efficient.
Changes are happening even faster now that they used to. The rate of change of processes feels like it is accelerating. Back in Tina’s software development days, Object Oriented programming came along and it was a shift in thinking. Some developers could do it but, not everyone could make the shift. So, it was a hard time then and it’s another hard time of change now. It’s a similar pattern.
Agile vs. Waterfall
Agile is a methodology opposite to a waterfall methodology. In a waterfall, it was a step by step process to get from the beginning to the end of a project or a deliverable. There is change control and other items throughout but, these all take time and require going through separate processes. The result is a long process where the end result may not be completely what was expected and it took a long time to get to then end goal.
In agile, most work is done in two-week sprints. During this time, the customer is giving constant feedback along the way. User stories are used to break tasks up into these sprints. Different items are prioritized and the customer is always present to give feedback and re-prioritize. The result is a quicker time to market for the end result and a product more in line with the customer’s needs.
Back when Tina was doing software development, a form of agile called extreme programming was used. It’s been continually developing over the last 20 years into the different forms of agile we see now. The continual change and development is a result of technology and processes moving so fast these days.
DevOps uses the processes or agile and automation. Continuous testing is used in a DevOps approach which is very much an agile method. Agile tends to work better than waterfall methodologies in software development in Tina’s view. In software specifically, it helps teams in coordinating their work. In Tina’s work with DuPoint, she helps clients perform application and methodologies assessments. It is successful for clients and it’s becoming the standard for them going forward.
In process management and product management, agile has to be involved. The business owner has to be involved at this point and they help to prioritize what needs to be integrated in the end goal. The same applies to product management.
Testing and Automation
In DevOps, you can make constant deployments and take your testing process and make it part of your deployments. It shortens your time to market in being able to test as you go along. Many companies don’t necessarily understand what DevOps is just yet. But, the push to the cloud really pairs with the DevOps mentality. Developers need a broader skillset when requesting a server from the cloud in a DevOps environment. They need to know the memory, disk space, and CPU requirements. These were what an infrastructure person or systems admin used to manage.
It requires a new skillset for software developers and it’s a shifting of responsibilities. Many organizations have architects who help developers with this transition. In a traditional Data Center, you are paying for storage, power, etc. In the cloud, you pay to pull something out or put something into storage you are using and you can automate it. So, it becomes a new model.
Be ready to Learn
For someone getting into IT, developers specifically, be ready to learn. The technology is changing and you need to be able to learn the next thing. You could still do Cobol for example. But, there is not nearly as much of a need as there used to be. You don’t want to get stuck in one area and not looking for the next step in your career. Develop the ability to reinvent yourself. Who knows what the next big thing in IT will be. The point is to be prepared to change and reinvent yourself.
Security is an area that plays into all this of course. A security mindset is needed regardless of your role. Developers specifically need to be aware of security concerns.
Tina liked Math and English in school and figured Math would be a better opportunity for a job. She was introduced into computer science and it seemed fun. Tina soon started her career at Bell Labs and worked on early software defined networks. She liked it and wanted to work on phase 2, but she was placed on a different project and grew more in that other role. So, she learned early on to accept change and to allow herself to reinvent. With this type of directional change comes perspective.
Be ready to Change
Be prepared for change. You don’t know what it will be but, you will be better prepared for the next change when it comes.
From a career perspective, the biggest impact for Tina is personal networking. Connecting with people and talking with them. It gives you the opportunity to connect with others and you need to take care of your network. The principle of it is determining what you can do for others, not what they can do for you. It’s really a basic principle of IT itself in working on things for others, so regard your network in a similar fashion. Determine what can you do for others.
People tend to forget to network when they have jobs. The time to build your network is when you don’t need a job, not when you do. It can admittedly be hard for some people. You have to force yourself especially if you are an introvert. Tina made herself to go to events 2-3x a week to talk with people. She found, not surprisingly, the more you do it, the more comfortable you get with it. It’s a principle of listening and determining what you can do for others.
Tina has a story when she was a new employee at Bell Labs. On a shared computer, there were trigger files you ran when sharing computer time. Someone had created a file called *. Tina went to remove it and typed in remove * which tells the system to remove everything. She stopped it immediately, but anything before the letter P was gone. Those deletes impacted a number of people obviously.
There was also some training with people at ITT where Tina taught. She taught Windows, DOS, Linux, etc. The younger students struggled with DOS and Linux. She said they got frustrated with the exact commands having to be entered in a specific case and order by keyboard.
Tina experienced this type of frustration herself with her son in Windows when it first came along. He changed the icon on a screen and she couldn’t figure out what he did either at first. Her son couldn’t fix it either…because he was three.
IT/Geek Speak this episode:
- DevOps – Development Operations – A blending of operations (management/care and feeding of IT systems) and Agile (a methodology to speed up delivery of an end product or goal.
- Waterfall – An older method of product delivery. It runs through a step by step process which can take a long time to complete. The end product is often completed but not precisely what the customer was looking for…if the process is not managed properly.