Economics of the Cloud

Cloud Economics

For most companies, maintaining a large IT presence implies large capital expenditures and a non-trivial amount of accounting and record-keeping to track depreciation, tax considerations, and so forth. When you purchase the hardware and the software, they become yours (in every sense of the word) and your long-term responsibility.  The traditional model of enterprise computing is a capital-intensive function that requires expensive data centers (electricity, air conditioning, servers, networks, storage, etc.) and operations staff (hardware swaps, networks, backups, OS updates, upgrades, etc.) to keep it all running effectively. With an on-premises data center, you must plan and provision for maximum utilization, which is financially inefficient.

Data Center

The appeal of cloud computing includes the ability of enterprises to pay for only what they use. If demand decreases and you no longer need the assigned capacity, you can turn off systems and you are no longer charged for those systems. Since the cloud is a subscription-based model, it is an “operating expense” model. Computing becomes a service for which businesses are billed a monthly charge that is metered by actual usage. The more (compute, network, and storage resources) that you use the more expensive your monthly bill. The less you use, the less you will be charged.

Another way to save money is cloud operations frees your enterprises of the costly tasks of system backups, routine network maintenance, software patches, etc. because you cloud provider can handle these tasks.

Azure Spend

Most IT organizations find wide variations in system utilization. Some applications are seasonal and other applications run for a short period of time before being shut down. You might have other applications that are simply unpredictable and you can’t apply a cost saving model.

Building your server infrastructure in a cloud environment can save your business money and allow for greater innovations for less money.

 

Deadly Developer Career Mistakes

meeting

Lots of people can tell developers what to do, including the best choice for language, best new technologies, etc. What this article is trying to tell you is what not to do. In this article from Paul Heltzel, we learn his top 7 tips:

  1. Staying too long – He says that you should stay at least 2 years, but not longer than 4 years.
  2. Job Jumping – Varies by type of position, but stay at least through the current project.
  3. Passing on Promotion – Promotion means more money, but at what cost. Skipping promotion opportunities might also signal you aren’t committed to the company.
  4. Not paying it forward – Always find time to mentor junior developers.
  5. Sticking to your stack – Broaden your knowledge to make yourself more valuable.
  6. Neglecting soft skills – Learn social skills to be a better person.
  7. Failing to develop a career roadmap – You need a plan on where you want to be, and create a plan to take you from where you are today to that target destination.

I think those are all really great notes, and I agree with them all. My one criticism is it leaves off my number 8, focused on business:

8 . No Business Knowledge – Learn how business works, not just how to leverage technology. Leverage your knowledge of technology and a better understanding of business to drive better decisions, better solutions, and better ideas.

 

Enterprise Architecture Interview Questions

In the process of interviewing for an Enterprise Architect position, some fairly common questions are asked. You should practice the answers to these questions so that they sound well thought out and your answer is easy to understand.

1. What is Enterprise Architecture?

An Enterprise Architecture is a collection of strategic information that describes a business and the information and technologies necessary to operate the business. This includes descriptions of goals, business processes, roles, organizational structures, information, applications and systems. It is a process that encapsulates the information necessary to implement new technologies in response to the changing needs of the business.

2. What are the Four Domains of Enterprise Architecture?

Enterprise Architecture is often broken down into four domains: application, data, technology, and business architecture.

3. What is the value of Enterprise Architecture?

Enterprise Architecture is a strategic information asset that is used to shape the entire Enterprise. It is essential for efficiently planning and directing future IT investments, as well as understanding the current investment in technology. Enterprise Architecture helps achieve enterprise alignment, manage change, and reduce time-to-market.

4. What is the TOGAF framework?

The Open Group Architecture Framework (TOGAF) is a framework for enterprise architecture. It provides a comprehensive approach to the design, planning, implementation, and governance of an enterprise architecture. TOGAF models the enterprise at all four domain levels: Application, Data, Technology, and Business.

TOGAF includes a methodology for defining IT in terms of a set of building blocks. It also contains a set of tools, a vocabulary, recommended standards and list of TOGAF compliant tools.  TOGAF includes a iterative process for enterprise architecture called Architecture Development Method (ADM).

5. What is the Zachman Framework?

The Zachman Framework is a framework for Enterprise Architecture developed by IBM in the 1980s. This framework has been incorporated into many Enterprise Architecture frameworks. It provides a way of defining an enterprise according to a 6×6 matrix of architecture documentation. The columns of this matrix ask the questions why, how, what, who, where, when. The rows look at these questions from different levels of detail: contextual, conceptual, logical, physical and detailed.

The Zachman Framework provides a view for Planners, Owners, Designers, Builders and Subcontractors. The basic idea is that the same thing can be described for different purposes in different ways.

6. What is ITIL?

Information Technology Infrastructure Library (ITIL) is a set of best practices for IT service management, development and operations. ITIL gives detailed descriptions of a number of important IT concepts and includes checklists, tasks and procedures that can be tailored for any enterprise. This standard was initially developed to align with the service management best practice specifically defined by ITIL, but can support other IT Service Management frameworks.

Basics of Good Meetings

Communication

Company meetings are often met with mixed emotions. You want to be included in the discussion, but you don’t want to waste your time in a meeting doing nothing. You have to remember that when you schedule a meeting, your invitees also feel the same way. Your challenge is to invite the correct people to the meeting, make the time spent in a meeting useful to the participants, and provide significant value to the company.

There are some basic rules that make meeting more useful and less painful.

1. Required Meetings

Sometimes people will want to ask someone on a team a few questions about a project, and before they realize it they have scheduled a one hour meeting with 8 people so they can ask two questions. A meeting has a cost in wasted employee time, the cost of a conference room, and lost productivity.  You should ask yourself if you really need a meeting or it a simple email would be a better way to ask a question or to communicate basic information.

2. Create an Agenda

When you are creating the meeting request, enter the meeting agenda into the text of the invitation. If you can’t communicate the purpose and agenda of the meeting in that invitation, then you shouldn’t be scheduling the meeting. If you go into a meeting without an agenda, then you are allowing the meeting participants to drive the agenda and you risk wasting everyones time because you aren’t able to control the agenda. While it isn’t always possible to have a formal agenda, you should have a fairly clear list of items you want to discuss, and have the ability to ask non-essential discussions to be held until after your meeting or as part of a second meeting. You want your meeting to have a definite structure, communicated in advance of the meeting.

3. Established Outcome

You should have a defined outcome that is expected and communicated to the entire meeting group. The best way to do this is in the invitation, and at the beginning of the actual meeting. If the purpose of the meeting is to get an update on a couple of aspects of a specific project, make sure everyone knows that is the expected outcome of the meeting. Stick to that agenda and before you leave the meeting you want those questions addressed. Everyone that accepted the meeting request understands what is going to be covered and will come prepared to address those issues. If it isn’t part of the agenda, then it shouldn’t be added to the end of the meeting because you have the conference room for another ten minutes. If everyone covers the meeting agenda in just 30 minutes, then congratulate the group and end the meeting ahead of schedule.

4. Never Be Late

You should never be late to a meeting, especially if you are the person who scheduled the meeting. Never be late for your own meeting. Never. You have convinced a group of people to take valuable time out of their work schedule to attend your meeting, then they have to sit in a room quietly waiting for you to appear. If you want people to respect your time and  agenda, so you have to respect them first.

You also never want your meeting to run late and go past the scheduled end time. If your meeting is scheduled to end at 10 am, then you should try to end the meeting at 9:50 am. This allows a little room to wrap up the meeting and make sure everyone who wants to make a comment has a minute or two to get in their thoughts, but also shows you value their time and respect their schedule.

5. Ask Questions and Listen 

Ask specific questions and listen to the answers. Don’t be waiting for an opportunity to say something or just make a comment. Drive the conversation by keeping the flow of positive information between your meeting participants going. It is fine to sit quietly and listen to the exchange of ideas as long as it is part of the overall meeting agenda. Your focus should be to keep the meeting on target and on time.

6. Focus

Keep the meeting on target. If it isn’t part of the original agenda, then move the conversation back to the agenda or end the meeting. Meeting are intended to be places that encourage a positive exchange of ideas, but if you can’t get that done then just end the meeting and thank everyone for their time.

7. Share the Time

If the purpose of the meeting is for you to speak to the team, then make sure that is the stated agenda. After you have made your statements, always ask if anyone has any comments or questions. If you aren’t interested in hearing questions or comments, then you should have just sent an email statement and saved everyone the trouble of attending the meeting. Always make time in the schedule for people to ask questions. If there isn’t enough time to answer the question within the allotted time, release the group after you announce you will either stay around to complete the answer or that you will email the group with the answer later in the day.

8. Avoid Lunch Meetings

Even if you are willing to buy lunch for the entire team, I might still have plans that make it difficult to stick around during lunch to attend your meeting. Avoid scheduling meetings around the normal time range for lunch. This goes back to respecting everyones schedule.

9. No Cellphone

All attendees should respect everyones time and silence their mobile devices. You also have to realize that not everyone can provide undivided attention because of other responsibilities. Keep the meeting brief, stick to the agenda, and respect everyones time and you will have better meeting and happier attendees.

If you disagree with these rules, or think we should add additional items, let me know in the comments.

Business Logic and Information Systems

If you want to become more valuable to your company, you should begin by understanding the business logic of your company.

five-features

Business logic might be best defined as a formal functional activity that is performed based on specific operating procedures within a business. This is simply what a business does and why they do it that way. Business process modeling is a technique of designing and capturing the business logic of a company. Understanding the internal business procedures is critical in the determination of how an organization can become more efficient. These business models give companies a tool to communicate their current procedures in a standard manner.

All processes within an organization consist of multiple layers of business logic. Two companies might be in the same business, but they might do their business processes completely different. Some businesses process might be exactly the same between these same two businesses. Imagine the process that is required to access a computer. Typically the computer would require the user to enter a name and password. This name and password combination is then verified and validated. Incorrect passwords cause the computer application to prompt the user to re-attempt the required credential business logic process.

A successful business might stumble into a successful business logic that works, but a efficient and effective business model is one that is completely documented from beginning to end, and every process is understood and evaluated. If you image that you are the person that has documented that process, understands the process, and can apply basic changes to improve efficiency, then you now see how that could be valuable to the company.

Business logic is also used in the are of business process re-engineering. This is a technique used by many organizations to streamline and improve existing business processes. Manufacturing is an industry that typically requires specific steps to complete a process. Improving these steps can increase productivity and profits for the organization.

You should start learning everything you can about the business you work for today, and start documenting the process from beginning to end. Once you have that process documented, you can start looking for efficient processes and procedures. Once you find an process or procedure that can be improved, you are also well positions to argue that your solution would improve the business logic because you understand how that one process impacts the business from end-to-end.

meeting

If you work for a company that has a $500,000,000 in revenue, and you are able to improve processes that lead to just a 1% improvement in revenue, you just helped the company generate $5,000,000. You can understand how that will get the attention of the company leaders. It doesn’t have to be a change in information systems to generate these kinds of savings. This might be as simple as reducing paperwork required to create a sales order resulting in faster orders. It could be a change in shipping package materials, resulting in lighter packages and lower shipping costs.

As a member of your company information systems department, you are in the position to see most of those business processes and also document those processes. You are also in a position to recommend process changes, system improvements, and to recommend procedural changes to make existing processes more efficient.

10 Ways to Deal With Stress in IT

You are stressed. You have finally gotten the perfect job at a great company, and now you find yourself stressed out and wondering if you have taken the wrong position, or even if you have chosen the wrong career. There’s no reason for you to allow your career to crush your soul and destroy spirit. Before you allow the stress to drive you crazy, give one or more of these techniques a try and see if they don’t help you get through the day without pulling out your hair.

1. Learn to say no. It takes time to come to grips with this one. When you first start out, you will understandably say yes to nearly everything. Why wouldn’t you? Last hired, first fired…right? Because of that, it’s in your best interest to make sure everyone knows you’ll do anything to please. Eventually that attitude will wear you down and you’ll find that saying yes too much will start filling you with a sense of bitterness and anxiety as you are exhausted by constantly running round completing a thousand tasks each day. Learn early on to say no. This doesn’t mean you refuse everything. Instead, pick your battles and agree to those things that can actually benefit you without wearing you down.

2. Take breaks. It’s very easy to take your lunch at your desk or while you’re driving to the next appointment. Don’t even be tempted to start down that dark path. It is crucial that you step away from the grind for a period during each day — just to reset your mental meter. Lunch is the perfect time for that. Leave the office and do not return until your break is over. It might be a hard routine to start, but eventually, that break might be the thing that gets you through the day. Beyond your midday break, make sure to give yourself small moments throughout the day to recharge your batteries.

3. Leave work at work. You need to have a ritual that may save you from imploding. Whenever possible, leave work at work and give yourself a break from the stress at work each day. Maybe it is the ritual of removing your employee badge. When you aren’t wearing the badge your don’t work. That silly gesture was actually quite effective at helping you to not bring your work, and its associated stress and tension, home.

4. Listen to music. If at all possible, play music throughout the day. Just make sure to be mindful of those around you. If you must, use headphones. What you will find is that music will always put you in a good place — even when you’re working in a not-so-good place.

5. Sleep. Sometimes it’s tempting to avoid getting the right amount of sleep. The truth is, no matter how epic your all-nighters may be, they will take their toll on your mental and emotional health. This is especially true if you’re working under very stressful conditions. If that is the case, it is crucial that you’re getting seven to eight hours of rest per night.

6. Laugh. It may be cliché, but laughter really is the best medicine. There will be situations that are completely maddening. The only way to get through them is to laugh them off. Sure, it may seem like the absolute wrong reaction to such a situation, but sometimes the only way to face a stressful time is to laugh.

7. Don’t fight fire with fire. If someone comes to you with accusations or demands, don’t turn it around on them or toss a bucket of gasoline on the flames. When a situation like this presents itself, take it all in and think before you react.

8. Breathe. Every so often you just need to stop and breathe. Oh sure, we all breathe without conscious thought, but sometimes we need to take it to the next level to rid our bodies of stress and tension. So the next time you feel the heat rising, take a moment and inhale a deep, long breath and slowly release it. 

9. Walk away. Sometimes you simply cannot win. When that happens, it’s best you just walk away from the issue. Does that mean you’re running from the problem? No. This simply means you step away so you can come back with a clean perspective and a fresh mindset. That alone will help you avoid a landslide of stress.

10. Shut the door. If you are lucky enough to have an office with a door, use it. When you are feeling stressed and overworked, shut the door and try to get some work done in peace and quite. Just one hour with the door shut and the phone on “do not disturb” you can help the stress melt away.