Understanding the NIST Cybersecurity Framework

Summary

The Cybersecurity Framework Set was an optional standard created by the National Institute of Standards and Technology under the United States Commerce Department. This set of guidelines for private sector companies is intended to help them be  better prepared in identifying, detecting, and responding to cyber-attacks. It also includes some guidelines on how to prevent and recover from a cyberattack.

The NIST Cybersecurity Framework is intended to address the lack of standards when it comes to cybersecurity. As with almost everything else that deals with technology, there are currently major differences in the way companies are using technology to detect and remediate attacks from hackers, malicious users, and ransomware.

With the complexity and frequency of cyberattacks growing each day, the task of detecting and preventing cyberattacks has gotten too difficult and complex to be left to chance, and a lack of a strategy among most organizations only makes this effort more difficult.

Continue reading “Understanding the NIST Cybersecurity Framework”

Common Database Design Mistakes

When creating a new database instance, people will often make mistakes. While I can’t list all the mistakes that people can or will make, I hope this brief list will help you know what mistakes are possible, and help guide you to not making as many mistakes. Sometimes we attack a design problem with the idea that we will just get the work done, but most times it is better to take the extra time to do it right.

I’m not perfect, and I have made these (and many other) mistakes in database design. I’m not trying to tell you what to do or even how to do it. I’m just trying to take my lessons learned and provide a simple list so that you might not make the same mistakes. I also want to point out that no list will ever be the only way to do anything. With database design questions, the best answer is usually “it depends”. When considering the many variables that make up your environment, you will need to make many decisions that help your database instance work best in your unique environment. You have to take into account the personnel you are working with, the limits of your hardware, company policies, etc.

Database design and implementation is the cornerstone of any database related project and should be treated will the importance that deserves. If you do your job really well, people will tend to minimize how important your job is in getting their projects completed. Like a police department that does a good job catching and locking up criminals, people start wondering why they need so many policemen when the crime rate goes down. People might start asking why they need your help in getting good database design, but it will only take a few failed projects for them to come back to you for your professional help.

Continue reading “Common Database Design Mistakes”

How to Take Good Notes

Photo by Startup Stock Photos on Pexels.com

 

It is important that you can review what you’ve been told as quickly as possible, particularly in a technical position where things can get very complicated.  You might be tempted to memorize a list of requests or even recall a technical discussion from memory, but I’m going to tell you right now that you will not always be successful.

I have been in the IT field for many years, and I’ve seen too many people rely on memory to recall technical details and they are just never 100% accurate. You need to write down everything, and even that will not be 100% successful, but your success rate will be higher than using just your memory. It is also helpful in disputes about what was actually said during a meeting. You say they asked you to do “x”, and they say that they told you to do “y”. If you pull out your written notes and they say “x”, you will probably win that argument.

Steps to Note Taking

  1. Buy a notebook – No matter how you want to store your notes, you need a notebook. Even if you plan to electronically store your notes for easy searches and printing, you want to start with a paper notebook. This will give you a platform for quick notes, drawing diagrams, etc. Never cross your personal notes and business notes. One notebook for work, and if it isn’t related to work it doesn’t go into that notebook. This can be a simple composition notebook, spiral notebook, cheap ruled pad of paper, etc.
  2. Blog your notes – Once you have completed the work day, or even the next morning, copy your notes to a private blog site. You want this private blog to be blocked from public access, but this blog will allow you to easily search through your notes and find keywords. This is also the perfect time to clean up your notes and add details you might not have thought important during the actual meeting. You want to do this while the events are still relatively fresh in your mind.
  3. Structure – As the meeting starts, you need to be prepared for the meeting by having turned to a blank page in your notebook. Write the subject of the meeting at the top of the page, along with the date and time of the meeting. Note who is attending the meeting, including people connected remotely. Take notes about questions asked, answers provided, and action items assigned to each person. Take notes like you might be asked to recreate the meeting by a police investigator a year from now. You want to take enough notes that you can speak intelligently about what was discussed, who was asked to do which tasks after the meeting, the names of everyone attending, and any unresolved items from the discussion. Never assume you will remember all these items 1 week later, much less a year from now.
  4. Listening – By listening to everyone else in the meeting, you should be able to pick up on important items for that person. If it seems important to them, maybe because they are stressing the item, you should probably write it down for your notes. Even if nothing important is discussed, your notes should say that.
  5. Write Neatly – You will probably need to read these notes again really soon, especially if you later move them into an electronic format, so make sure you write in a way that you can read the notes at a later time. When possible, write in complete sentences and use bullets and numbers to note important items. Don’t be afraid to underline important notes, using stars to point out assigned tasks or questions that you need to answer later. Use diagrams or sketches to illustrate important concepts or to copy whiteboard discussion notes.

Once you get into the habit of taking useful notes, you will develop a system that works best for you and the way your brain works. As your responsibilities grow and you are expected to manage more complex and expensive projects you will want to have already developed the skills to keep track of those projects without getting lost in the details. Start early and develop a system now that allows you to record all the important information, and it won’t be so difficult later. People will quickly lose confidence in your abilities if you forget assigned tasks from your meetings, can’t remember what was discussed from week to week, or can’t remember who made important decisions from 5 meetings ago.

 

 

Another Example of Difference Between a Manager and a Leader

While reading about project management, I saw this diagram helping to illustrate the differences between management and leadership. While many people don’t understand the difference, as a person assigned the task of management you should understand the difference.

In my earlier post of this subject, I laid out the logic that helps illustrate the difference.

A manager threatens punishment for poor behavior, and provides rewards for good behavior. A leader inspires people by telling them what can be accomplished, and helps guide them to a common goal, pushing those people to stretch their abilities so they can do great things to help the team reach that common goal. A leader lifts their followers by building on their abilities and guiding them toward the right direction.

Understanding the NIST Cybersecurity Framework

Summary

The Cybersecurity Framework Set was an optional standard created by the National Institute of Standards and Technology under the United States Commerce Department. This set of guidelines for private sector companies is intended to help them be  better prepared in identifying, detecting, and responding to cyber-attacks. It also includes some guidelines on how to prevent and recover from a cyberattack.

The NIST Cybersecurity Framework is intended to address the lack of standards when it comes to cybersecurity. As with almost everything else that deals with technology, there are currently major differences in the way companies are using technology to detect and remediate attacks from hackers, malicious users, and ransomware.

With the complexity and frequency of cyberacttacks growing each day, the task of detecting and preventing cyberattacks has gotten too difficult and complex to be left to chance, and a lack of a strategy among most organizations only makes this effort more difficult.

Continue reading “Understanding the NIST Cybersecurity Framework”

A Quick Introduction to Scrum Methodology

Agile is a development method designed to add energy, focus, clarity and transparency to the project planning and implementation process. Scrum is probably the most widely used Agile framework for developing and managing complex projects. Scrum is used to successfully manage projects in which there is usually uncertainty and ambiguity at the early stages of the project, and the methods used help organize efforts to complete small pieces of an overall project as they are defined.

The entire project is split into a sequence of smaller iterations called Sprints. Each Sprint is time-boxed for less than one month (usually 2 weeks) and planned well in advance. Planning is completed not according to a set of prescribed tools, but according to the requirements as decided by the Scrum team. A self-organizing and cross-functional team identifies tasks and organizes team efforts to accomplish a well defined set of tasks in small 2-4 week increments of time. In order to achieve maximum cooperation among all team members, daily face-to-face communication is encouraged. The business stakeholders and the technical team assigned to the Sprint work in close collaboration to deliver of high-quality, working software at the end of each Sprint.

Continue reading “A Quick Introduction to Scrum Methodology”

Output is Better


You work hard. You know you work hard, your co-workers know you work hard, and your customers know you work hard. No one cares that you are working hard. What really matters is output. What have you gotten done? It has been shown through numerous studies that people will feel more value in a process that seems more difficult. People feel vacuums are more powerful if they are louder, cars are more powerful if the engine makes more noise, and that software must be really powerful if it took you more than a couple of 10 hour shifts to develop.

But the key to happiness is getting work done without so much effort. One of the things that is supposed to be a benefit of experience is things are supposed to get easier with age. Don’t fool yourself into believing that working harder is working better. What lessons have you learned that can make your job easier? If it is still taking you the same amount of time to do most of your tasks, you have to ask what you are doing wrong.

Continue reading “Output is Better”

Kanban vs. Scrum

 

If you are wondering if you should move from a traditional Waterfall development methodology to something new, but can’t pick between Kanban and Scrum, here is some information that might help you pick a new path.

Kanban

Kanban is a simple methodology that focuses on the tasks your team is currently performing. The tasks are displayed to all participants so you and your team can track the progress and easily see what tasks are currently active. A good practice is to organize your development process using a Kanban board to show the status of each task, from “to-do”, “in progress”, “testing”, “ready for release”, and finally “released”. This simple methodology gives the team more flexible planning options, a clear focus on specific tasks,  transparency on what is coming next, and a faster output by helping them focus on just a few tasks at any one time.

Continue reading “Kanban vs. Scrum”

Kanban vs. Scrum

If you are wondering if you should move from a traditional Waterfall development methodology to something new, but can’t pick between Kanban and Scrum, here is some information that might help.

Kanban

Kanban is a simple methodology that focuses on the tasks your team is currently performing. The tasks are displayed to all participants so you and your team can track the progress and easily see what tasks are currently active. A good practice is to organize your development process using a Kanban board to show the status of each task, from “to-do”, “in progress”, “testing”, “ready for release”, and finally “released”. This simple methodology gives the team more flexible planning options, a clear focus on specific tasks,  transparency on what is coming next, and a faster output by helping them focus on just a few tasks at any one time.

The team should concentrate only on the tasks which are currently emphasized by being marked as “in progress” . Once a task is done, the team moves on to the next item at the top of the backlog, marked as “to-do”. The product owner (traditionally a manager) is free to change, re-prioritize, and even re-organize the tasks in the backlog as any changes outside the current “in progress” list won’t seriously affect the project.

Team members are given the responsibility to focus on the active “in progress” tasks and are expected to work only on those tasks. The methodology works well for unexperienced personnel and even teams that have just started working together. It is flexible enough to allow teams to reassign tasks between team members or reshuffle tasks based on what each person feels like working on today.

It seems to work best when:

  • Focused on continuous delivery
  • Helps improve productivity
  • Personnel need help adapting to change
  • Shorter time between task assignment and expected results
  • New or inexperienced personnel need to be productive

Scrum

If you need a lightweight development framework to manage complex development efforts, you are probably looking for Scrum. This method is iterative and flexible strategy involves the whole team, working as a unit to significantly increase productivity. Scrum is a simple set of roles, responsibilities, and meetings. that helps helps the entire company cope with changes, provide better project estimates, and increase the quality of the solutions delivered. The work done by the development teams is performed in a series of fixed-length iterations called “sprints”.

A sprint is a period of time during which a specific work should be done and ready for preview. The duration of each sprint is fixed and agreed in advance, usually between one and four weeks. Each sprint starts with a planning meeting, and during the sprint the team must attend a short daily scrum meeting, usually at the same place and time every day.

Scrum has just three specific roles: Product Owner, Scrum Master and the Development Team. Since your scrum team is cross-functional, your development team will include include, developers, designers, testers, technical writers, and anyone else that will be involved in the sprint.

The Product Owner represents the process owner and will set the priority of the assigned tasks, sprint duration, and determine the tasks assigned to each sprint.

The Scrum Master keeps the development team working on the proper tasks and helps identify items that are slowing the team down or blocking expected results. If the Scrum Master sees something that needs attention, the Scrum Master and Product Owner meet to decide how they should resolve the problem to get the tasks done correctly and finish the sprint as planned. The development team is mostly self-organized and responsible for the completion of their assigned tasks.

It seems to work best when:

  • Experienced development team needs little or no supervision
  • Project is long and complex
  • Focused on continuous delivery
  • Business requirements are constantly changing
  • Continuous feedback to corporate management is required

 

Project Innovation

The best way for a business to take market share is to innovate and create processes and products for their customers that their competitors just can’t offer. The best way to improve your project management ability is for your company to become innovative about how you manage projects.

Wikipedia says “Innovation is defined simply as a new idea, device, or method. However, innovation is often also viewed as the application of better solutions that meet new requirements, unarticulated needs, or existing market needs.”

Sometimes people don’t see project management as “innovative”, because it is usually a defined process that is very similar for each project. This mentality sees project management as a “cookie cutter” approach to handling each project the same way. This view of project management is often driven by an outdated view of project management as a rigid framework for strict control of a project, the management of assigned people, as well as all of the processes that are attached to project management.

Better Planning

Once you have decided what the desired outcome of the project should be, you have to plan how to take your limited resources and get the best possible product. Everyone will agree that planning is very important, and planning usually takes the most of the time of the assigned to your project.

When planning your project and attempting to be more innovative, it is important that you establish flexible goals and timelines that allow your team time to develop their ideas and incorporate those new ideas into your final product. If you don’t give the team enough time to try new methods or research new ideas, your product will lack any effort to innovate.

Flexible Implementation

Mistakes can be seen as failure, or an opportunity to try something else. If your company is going to innovate your project team has to be encouraged to try new things, and learn that failure is acceptable. If you have rigid deadlines and no flexibility in our milestones, you are killing the thinking sprit of your team, which kills true innovation.

Teach your team that failure will always be viewed as an opportunity to learn and grow. Your team should see their role as creative assets that find new solutions, not warm bodies assigned to do the same thing over and over like a factor worker.

Make sure you communicate with the entire team to let them know what is expected from each member, including management. Your team should be encouraged to share ideas and collaborate to create something truly better than anyone before.

Monitor Change

When you unleash innovation inside your company, amazing things can begin to happen. Total freedom can also breed confusion and lack of structure. Your team must maintain some perspective and understanding of the desired project outcome. Make sure the team is allowed freedom to innovate, but stick to your timelines, milestones, and desired project deliverables. 

Measure the teams success based on their ability to create results that benefit the project and the company. 

Proper Feedback

If your teams creates innovation and your project is a success, make sure management recognizes how your different approach to project management helped create the environment that made that innovation possible. You might not be successful the first time you strive for an innovative approach to project management, but you should look to improve our processes over time.

5 Tips for Dealing with Project Manager Stress

Most people know that the role of Project Manager is one of the most stressful jobs, because they are directly responsible for the success of a project and accountable for any delays. Some Project Manager actively cope with their high level of stress, but there are still someProject Managers who are ignoring the problem. Stress can impact you ability to perform at your best, and it can have a negative impact on your personal health and family life.

People might not able to alter the amount of stress a daily basis, but they can change how they deal with it.

  1. Prioritize – Determine what is truly important by creating a priority matrix and assigning every task an urgency and importance. Focus on the tasks that are urgent and important, and learn to let the little stuff go until your attention is required.
  2. Measured Reactions – Don’t react to events and allow your emotions to control your personality. If something bad happens, force your mental reaction to truly match the severity of the event. Not everything is a disaster, some events are just annoyances, and you should deal with them that way.
  3. Exercise – There are numerous studies that show exercise can help reduce your level of stress, and it has positive health benefits. Don’t look at exercise as as an option when you have time. You should schedule time to exercise just like any other project task.
  4. Stop Endless Debates – Discussing the pros and cons of an issue can be helpful it determining the best course of action or your project team. If you find yourself in an endless debate on what is best, surrender the battle and move on to the next problem. This will help lower your stress and conserve your energy to fight a different battle on another day. Know when to say when and stop fighting.
  5. Don’t “Over Think” Events – Don’t allow your mind to churn through all the “what ifs” or possible options, because that will just keep you stressing over events and worrying if you choose the best option. Focus on right now and them move on to the next issue so your mind doesn’t get stuck wondering about possible actions and building useless stress.

10 Ways Project Manager can Earn the Respect of Their Team

As a project manager, you may not care if you are liked but you do care if you are respected. How do you earn the respect and trust of your team?

  1. Acknowledge Ignorance – If you don’t know the answer to a question asked by your team, don’t make up an answer.  Your team will respect you much more if you tell the truth and offer to find an answer than if you are caught lying about knowing something that later turns out to be untrue.
  2. Treat People as Adults – You team members my act childish at times, but you are not their parent. You are the project manager assigned to get business done. If you feel like someone needs some constructive feedback, treat them as you would want to be treated and show them respect.
  3. Don’t Stereotype – Don’t assume you know about someone based on prior experience or by grouping all people together as the same because of they have the same job, same skills, or same background. Nothing kills respect faster than you assuming everyone is the same and acting like you have someone figured out without getting to know the individual.
  4. Make Yourself Useful – People respect someone who adds value to the project. If all you are to the project team is someone who shows up asking for a status report, you don’t have any perceived value to the team. When meeting with the team, start by asking them about the work they are doing, what tasks they need more information about, or what you can do that will help them get their work done on time. Be someone they know they can call if they need help, someone who cares about their problems, and the person who can offer possible solutions.
  5. Allow Wasted Time – No person can work at 100% all day everyday and not burn out. If you expect your team to do that you should also expect to never hit your deadlines and have a high turnover rate. Don’t expect your team to work at 100%, except when it is absolutely required. Allow people time to think, research ideas, talk to the team about non-project items to build morale, and time to work on non-project related tasks.
  6. Solve Problems before the team is impacted – This is related to item #4, but don’t go to the team and tell them requirements have changed and we need to find a way to get the new work done on the old timeline. You, the project manager, need to have formulated a plan to get the new work done on an acceptable timeline and present the new plan to the team in a way they understand this is the best possible plan with the least impact to their tasks. They will respect you as a problem solver looking out for their best interests.
  7. Facilitate Communication – A a representative for the company and the customer’s problems, you need to bring ideas and facts to the conversation about how to handle problems or resolve team conflicts. Amplify the best solutions, bring everyone to the discussions, and embrace good alternate ideas. You shouldn’t care if you had an idea first, just who has the best idea. Give credit to the team member with the idea that solves a problem, even if you had to do most of the work to turn the idea into an actual solution.
  8. Embrace Success – If you only focus on the tasks that are late or the budget overages, the team will always have the sense that they can never be successful or will ever meet your tough expectations. Make sure you know what is going well and you communicate that success to your team and to your management. There will always be those times when things don’t go well and the team needs to do better, but don’t always focus on the bad news.
  9. Stick to Your Guns – You know what is right and what is wrong, and don’t do something wrong for the wrong reasons. Work with your team and always be looking for ways to help your team do more, but don’t allow someone to talk you into taking a shortcut that will eventually make you or the team look foolish. This includes illegal or unethical actions. The Project Manager is supposed to stand between the team and corporate management to protect the team from stupid ideas, just make sure you are fighting for the right reasons.
  10. Have Fun – Don’t forget that you need to have the ability to enjoy your job and have fun. If you are stressed and hating your job, the team will detect that unhappiness and start emulating your bad attitude. That can destroy the team and even make them not respect you.

Did I forget to put anything on the list? Let me know in the comments.

Best Practice Guidelines for Documentation

Documentation can be one of the most difficult parts of a project. You might find it is difficult to get your team to spend the time required to get the documentation completed. Having an effective strategy to keep your documentation effort useful, efficient, and done on time will help you keep your project on time and focused on long-term results.

According to general best practices you should focus on:

  • Branding – Don’t be afraid to create a standard template so all your relevant documents have the same general appearance and sections. This should include a table of contents, page numbers, and corporate logos. This will also give the documents an “official” appearance which can help sell the idea that everyone should be reading and following procedures in the documents.
  • Schedule Time – Effective documentation doesn’t just happen, you have to schedule the time for the team to create the documents. Put the time on your calendar and force the team to spend the time required to write good documentation. There should also be periodic scheduled times on your calendar for allow you time to review existing documents and determine the required updates to keep the existing knowledge base useful.
  • Include Details – Write as detailed documentation as you think you will need, and summarize the data in a second version of the document if you need an executive summary. You need to determine the right level of documentation for your audience, but details are usually only available during the project and fade over time unless they are written down. Things that seem obvious today will be lost to time if they aren’t written down for future audiences.
  • Location, Location, Location – Good documentation will only be read if it can be found. Documentation is worthless if no one can find it when they need it, so make sure it can be easily located. Make sure the proper infrastructure is in place to help users access the documentation.
  • Knowledge Sharing – People generally don’t like writing documentation but find good documentation very useful. Make sure you put your documentation in a place where the people who need to read it can get to it without any issues. You might create different types of documentation (printed, electronic, Wiki, video, etc.) based on the target audience.
  • Up-to-Date – Keeping documentation current is one of the hardest thing for people to do well. Selling your team on the need to create the original version will be difficult enough, but asking them to review the documentation months or years later will be a hard sell, especially if the team already feels overworked with other projects. Using a version control will help you to manage the various versions of the documentation so you keep the latest version available and backed up.

Organize Your Day With Kanban

Unless you can complete the tasks on your To-Do list each day, To-Do lists may be outdated in your environment. A better solution might be a personal Kanban board. While this sounds complicated, it can be pretty easy to implement. Kanban (literally translated as “signboard” or “billboard” in Japanese) was developed in the 1940s by Taiichi Ohno at Toyota as a system to improve and maintain a high level of production.

Your personal kanban is a visual representation of work that you need to get done. You will need to create a bulletin board or whiteboard with 3 columns. You should label the first column “To-Do”, the second column “Doing”, and the last column “Done”. You then put each assigned task on a separate Post-it note, and put the new note under the “To-Do” column. The note should include a title, brief description, and maybe a due date.

As you start your day, you need to look at the “To-Do” column and move items to the “Doing” column as you actually begin work on that specific item. If you stop working on an item, it can stay in the “Doing” column or you can move it back to the “Pending” stack. At any time, you can glance at your kanban board and see what you are supposed to be working on right now, and those items still in your queue. You can also see your progress by seeing how many items are in the “Done” column.

For weekly or monthly reoccurring tasks, you can move the Post-it note from the “Done” to “Pending” column on Monday morning to restart the queue.

Rules

  1. Limit your “Doing” Column – You have a limit to how many active tasks you can work on at the same time. One of the points of the kanban is to show the pipeline of assigned tasks and visualize what you are actually working on so you can focus on specific tasks.
  2. Don’t Cheat – Don’t try to manipulate the kanban to make it look better. Be honest with yourself and wait for positive results based on actual success.
  3. Acknowledge Backlog – If a task is stuck in the “To-Do” column, you need to review why your aren’t able to start or complete the task. Maybe you are waiting on someone else to do something first? Maybe you have too many urgent requests to work on the non-urgent requests? You need to understand why you might have a large backlog and talk to your boss about ways to address the assigned workload.
  4. Adjust – If your have a more complicated environment, you may choose to add more columns or rows. More columns might allow you to track postponed or delayed items, items waiting for other people or groups, etc. The additional rows can be used to track tasks for multiple people or groups.

 

 

10 Tips for Motivating Technical Teams

When you manage a group of technical people, you have to be aware that they may have some specific needs to motivate them effectively. It’s important to know how to keep your team motivated.

  1. Treat them as Experts – As managers, we spend a lot of time finding the best possible candidate for any technical position. It is our responsibility to allow those great technical resources as much control as possible on their everyday tasks, and resist the urge to micromanage their actions. If they are your expert on specific subjects, deter decisions based on their feedback, and encourage them to provide as much information to the team as possible.
  2. Reward Progress – Technical work can be very difficult and time consuming, so when even mundane tasks are completed you should recognize the success and reward the team with a reward when possible. This can be as siple as a public recognition of a persons direct contribution to a project or someones help in resoving a production issue. You can also look at allowing someone to work at home for a few days, leaving early on a Friday, or removing them from after-hours support rotation.
  3. Delegate Responsibility – Allow members of your technical team to take some responsibility as part of a project, which might include some non-technical or managerial tasks. This will show your team your willingness to share in your responsibility, without the appearance of you pushing your job on your team members. Explain the opportunity and encourage those interested team members in taking on additional responsibilities that will help them grow in non-technical areas and coach them in building the skills required to move into management.
  4. Reduce Stress – Working in the field can generate a lot of stress. This can lead to many a late night trying to resolve problems. Some of these late night can not be avoided, by a manager must be aware of these late nights and make sure you keep them to an absolute minimum. Acting as a communication buffer between angry users and your technical team can be the easiest way to dramatically reduce their stress level.
  5. Encourage Solutions – People tend to recognize problems, but they don’t always propose a solution. You must allow your team to discover problems, but they must be allowed to also propose the solution. This helps them understand what it takes to resolve issues, but also allows hem to grow more comfortable in proposing useable solutions.
  6. Remove the Rotten Apple – Do not allow the troublemakers to destroy your team. Negativity can kill the collaboration and innovation efforts of your team, and you must not allow that to happen. Keep the complainers away from your team.
  7. Promote Communication – If  your team doesn’t feel comfortable in communicating with you and the other employees at your company, your team will never be successful. Listen to what your team has to say, and always try to understand the what and why they are trying to tell you.
  8. Turn Failure Into Success – Unless a failure is intentional or a result of laziness, stop punishing your team for mistakes. Mistakes and errors are opportunities for improvement. Hold retrospectives after any major event and and lead the team in a fact-based review to identify what can be done differently to avoid the same problem in the future.
  9. Encourage Innovation – Seek innovative ideas so that you can reward your team for anything that is adopted as a new best practice. You have some of the best technical minds available on your team, so unleash their ideas to uncover new innovation.
  10. Be Helpful – Address the concerns of your team and look for ways to make their life better. This might be handling difficult users, reducing nonessential tasks, or handling some paperwork so they can deal with the technical work.

Creating a Collaborative Team Culture

Building a successful team is the greatest thing a manager can do in business. You can’t have innovation without collaboration. To have a team that collaborates you must have an environment that encourages open and honest communication, transparent leadership, and using the correct tools.

Use the Proper Tools

People fear and resist change. Don’t let fear of change in your team, department, or company disrupt progress and true innovation. Get the correct tools that allows everyone to work together and make sure everyone uses the tools, which means making sure everyone gets the proper training. You know what tools they need, and it is your job to get those tools and make them available to your entire team.

Communication is Essential

You need to encourage you team to talk amongst themselves, but also with other people. Don’t be so quick to judge them when you seem them talking in the break room while getting a cup of coffee, or joking around with their co-workers by the copier. This communication can build friendships and emotional bonds within the company that makes formal project communications easier and helps fortify trust with their co-workers.

Transparent Leadership

People distrust people who keep things secret from them, and that is just human nature. If you want people to trust you, then you have to bring them into the conversation and share as much information with them as possible. That doesn’t mean you can’t have secrets, it just means you have to trust them before they can trust you. Tell your team as much as you can, and if they ask you about something you can’t discuss with them you just have to be honest and tell them you can’t talk about that right now.

Coaching

Lead by example. Don’t ask your team to do anything you aren’t willing to do, and that includes collaborating. Be the example you people use when deciding how to collaborate. Listen to the concerns of your team and address those concerns with open and honest feedback.

How to Define Project Scope

Working with your project stakeholders to define and stay within your project scope can sometimes be the most uncomfortable and awkward experience of the project. As project manager, you will have to actually get a project completed while dealing with stakeholder assumptions. This process takes a lot of patience and knowing when to ask the correct questions during the requirements-gathering process.  

At some point in almost every project, a stakeholder will question if you are delivering what they originally asked for during the the original requirements-gathering phase. What you have to do is reduce how often that happens, and that means improving your process to deliver a solution that matches stakeholder expectations without project changes.

Ask the Correct Questions

By paying close attention during the stakeholder or client interviews, you will find it easier to understand what they are asking you to deliver, and you can also guide them to a better solution. This means asking the correct questions, and providing the correct information when they ask you questions. As a project manager you don’t just write down their requests without really understanding why they are asking for the features requested. By understanding, and not just documenting, you can easily assign importance to each feature and intelligently discuss the features if someone else wants to change the feature or eliminate the requested item because of budget constraints.

Things Change

Everything changes, and so will the requested features for your project. Business priorities change, customer interests change, technology changes, everything changes. Make sure your project sponsor and stakeholders understand you expect and can support changes, how they must request changes, and how you will manage change during the project. Make sure everyone understands the process to request a change, how a change will move through the approval process, and how everyone will be notified of requested and approved changes. You must accept that things change and never respond in a negative way if the change request is conducted in an approved manner.

Be Human

Communication is the most difficult and the most essential part of any project. The larger the project, the more difficult to communicate to the entire team. As project manager you must accept that all communication is essentially one person telling one or more other people what is happening, and that can’t always happen through printed reports and emails. Sometimes you just have to be human and talk face-to-face with another human to effectively communicate ideas and project status. You will need to understand the people involved in your project and conduct your communication using the technique and style that best meets their expectations. If you have a stakeholder that wants a daily face-to-face meeting, then expect that to be the standard status update method for that stakeholder.

Better Team Collaboration with Brainstorming

Back in 1939, advertising executive Alex Osborn began developing an relatively new method for problem-solving called Brainstorming. He figured that too many advertising ideas were the product of just a few people sharing creative ideas, and in an effort to get everyone involved he created a method of helping get more people to share their ideas.

Introduction to Brainstorming

You and your team have a problem that needs a solution, but you don’t have a proposed solution. Brainstorming lets you collect ideas from the team and discuss the pros and cons of each idea, one idea at a time. This is usually done in rapid succession, with the team either voicing their support or non-support before moving to the next idea.  The obvious problem with brainstorming is you risk missing the ideas that come when you think through proposed solutions a few minutes before discarding them as the wrong solution.

The usual setting for brainstorming is in an urgent situation, and the meeting is conducted to quickly propose a solution to a problem when you don’t have a lot of time for thoughtful insight. You do not want brainstorming to become the standard answer to everyday issues. You team should always collaborate, but it shouldn’t look like constant brainstorming.

Benefits of Brainstorming 

Brainstorming lets everyone participate – When you get your team together and and ask everyone to contribute, everyone is now a stakeholder in thinking of a solution and either defending or shooting down each idea. You just have to create an environment that makes them feel they can shout out their ideas and they won’t be shouted down or look silly.

Brainstorming doesn’t require special skills – The entire team can contribute with out needing special training. They can share their ideas, and discuss other team member ideas with out knowing much more that how to talk politely.

Brainstorming saves time – The flow of ideas can take a fraction of the time that a normal formal meeting can take, and since everyone can contribute you might get to the best idea faster than through traditional trial and error.

Questions to Ask

Every proposed solution has to start with questions from the rest of the team around who, what, when, where, and how. While not knowing the answer to each question will not automatically exclude the idea, it is a sign it might not be the best solution for your problem.

You should look at brainstorming when things get difficult or you have run out of ideas in an urgent situation.

Understanding Project Reports

One of the jobs of a Project Manager is reporting the status of a project to the various stakeholders. Once you get the hang of generating these four reports, you will be in a good position to accurately report the status of your projects.

1. Status Reports

Project Managers get requests for the status of their projects all the time. The Status Report is the most common project report and you’ll find yourself regularly working on them. The time period varies depending on the company expectations, project complexity, or communication requirements but the cycle is usually is daily, weekly, or monthly.

Since this report is the most common, you need to establish a template that covers the basic requirements so you can quickly update the contents on the required cycle. Some Project management tools allow for automating the reports, which can save you a lot of time on complex projects.

2. Risk Reports

The risk report includes a risk profile summary of the project. You should include the detail for the risks that have the greatest potential to create problems for your project. You should include a statement on the risks, summarizing how you are managing the risks, and prioritize the risks from greatest to lowest.

Most Risk Reports are generated monthly, and the report is normally the output that comes after a Monthly Risk Review meeting held with the project stakeholders.

3. Executive Reports

High-level reporting are tailored to the audience reading them. Executive Reports usually have less detail that the information on your Status Reports. Executives want to understand the status of your projects, they just don’t have the time to read about all the detail. Make sure you share just the information important to them, like issues needing their help, budget summary, key milestones, and overall timelines.

4. Resource Reports

The Resource Report will show the breakdown of which team members are allocated to which project tasks on specific days. This report can also be used to identify over allocation of resources, or resources that shouldn’t be assigned together for personality reasons, etc. Most software solutions offer integrated time tracking, which will save you effort in mapping resources and may even automate the reporting.

5. Budget Reports

Every project has a budget, and you should be prepared to provide a summary of the assigned budget and the amount spent to date. This will allow stakeholders to understand a summary of the spending and if you have been able to control spending.

Once you master these five main reports, you are well on your way to establishing the required minimum reporting for your projects.

Employee Expectations and Enterprise Software

It seems employees are more interested in shadow IT solutions than using approved enterprise software. This is a constant battle between IT Management and various departments that has no end in sight, and it gets more difficult to manage every day.

First, you have to accept that enterprise software can be very complex, difficult to learn, and complex to access. What can you to do to get non-technical employees to accept your enterprise solution?

When you look at the challenges of training your non-technical employees on how to use the new systems, maintaining minimum levels of employee productivity during the transition to approved software,  all while customizing the off-the-shelf product to fit your custom needs may make a typical employee question the wisdom of moving to the selected choice.

Most employees won’t accept the idea of required training to fully utilize the new software, but unfortunately many employees won’t know how to use the new applications without proper training. Make sure you include a budget for developing training material, training hours for employees, and time to develop quality training materials.

Employees expect constant access to the data they need to do their job, including remote access from multiple devices. If your chosen solution doesn’t perform the functions required by the team, expect resistance to accepting your solution over other solutions that appear to meet their expectations.

You have to balance corporate needs against what the team expects and find a solution that meets corporate needs while providing the functionality the team expects when looking at the solutions available today.

Using SDLC with Legacy Programs

Most technology professionals will agree that security is an essential part of technology. Developers will frequently talk about security throughout the SDLC (software development lifecycle) process, adopting secure coding principles and performing testing to catch and fix bugs, as part of the overall development process. SDLC can be a powerful thing, and we can agree that more organizations need to adopt the mindset of a secure development environment.

So what is a large organization to do when looking at reviewing and modifying older legacy applications to meet the requirements for today’s SDLC? These older applications could have been written many years ago and the source code may not have been reviewed for many years. The people who wrote that original code may also no longer work for that organization, or the programming language used may no longer the actively supported.

Instead of trying to review and rewrite all that legacy software, the management effort should focus on:

  1. Prioritizing any organized review of legacy source code to focus on the areas with the highest risk.
  2. Improving the process for remediating vulnerabilities as they are reported.
  3. Running any new code, or any legacy code being modified, through your updated SDLC.

You can read more about an effective SDLC here.

Importance of Teamwork

We have heard about the importance of teamwork since grade school gym class. We all know that a team that works together is better than a group of people working towards their individual goals. As you look toward the impact of teamwork on businesses, the importance is usually measured in dollars. Numerous studies have been conducted to accurately measure the impact of teamwork on business profits, and the value of teamwork is well established.

More recently there have be studies as to what kinds of teams are most effective, and in this article by Denise Cummins PhD, we learn a little more about how important it is to have both males and females on an effective team. This is relevant because many technical teams are usually predominantly male. Teams that are diverse have been shown to outperform teams that are not diverse by a significant amount.

The research in this area seems to point to the following conclusions:

  • Teamwork improves output productivity and morale in work settings.
  • Gender-balanced teams routinely outperform men-only or women-only teams.
  • Both men and women devalue women’s contributions in teamwork projects.
  • Men’s careers benefit from collaborations with women because team successes are more likely to be attributed to men’s efforts, whether this is true or not.
  • In order for women to ensure that they receive fair credit for their work, women should work solo, collaborate only with other women, or ensure that their contributions are explicitly documented and acknowledged when working with men.

Free Project Planner for Office 365 Users

When Microsoft released Planner for selected customers last fall, the project management and team collaboration application was seen as a possible solution to simplified project management. Now this tool is free to all Office 365 users for free. This utility lets you organize projects into “buckets”, which are collections of individual tasks that allows users to easily drag and drop from one bucket to another.

You can get more information from Microsoft.

Properly Facilitate Project Meetings

Whenever you are starting an new project, it is best to get everyone involved in the project together to sort out the project requirements. You’ll want to meet everyone involved, making sure they know their part in the overall project, but to also make a good impression with them as well as any senior executives that may be present. Even if you already know all the people involved from past projects, you’ll want to maintain any good will you might have earned from previous work and improve your work relationships whenever possible.

With the correct guidance to your attendees, and some proper planning by you, the project meeting can be a success.

  1. Agenda – Every meeting should have a written agenda. Basically, an agenda is a list of topics you want to discuss during the scheduled meeting. If possible, you want to share the agenda as part of the meeting request. This gives everyone an opportunity to study the agenda, prepare their notes, and come to the meeting knowing what they should be prepared to discuss.
  2. Correct People – Too many cooks in the kitchen can make creating a great meal too difficult. The same can be said about meetings. Too many people in your project meetings can make it too difficult to to create a great solution. Make sure you invite only the essential people to your meeting. Having decision makers attend is a huge advantage, but sometimes you have to work with what you can get.
  3. Notes – Since it’s often impossible for you to drive the meeting and take notes at the same time, you have the option to electronically record the meeting. Sometimes a better choice is to appoint someone as official note taker, who can also take photos of any whiteboard diagrams. You also need to share these notes and images with the entire team as soon after each meeting as possible. Make it your promise to send out your meeting notes within one day of the meeting, while the information is still relevant to the team. If your company doesn’t have an internal solution for this effort, find an internet-based solution and use it from day one.
  4. Ground Rules – During that initial meeting, you need to discuss a set of criteria that all meeting participants agree to use. These rules usually include the frequency of meetings,  what is expected from each member, how to access meeting notes, what topics are allowed, etc. The group needs to discuss the options and everyone must agree to them. The group creates and agrees to the rules, you are just the enforcer of their rules.
  5. Feedback – Sometimes it can be difficult to know if everything is going well. One way to get honest feedback is to let people comment anonymously. Tell the team they can talk to you privately and you will not repeat their name, encourage them to drop anonymous notes at your desk, etc. We all prefer face to face open and honest feedback, but I’ll settle with any honest feedback if it means my project efforts will be more successful.
  6. Action – Review the meeting notes to see what actions were expected. Follow-up with the people who are responsible for those actions and verify the work is being done. Provide updates to those action items as part of the next meeting.

By understanding what it takes to facilitate and properly plan your meeting, you are more likely to gain the trust of the project team and execute your project successfully.

How to motivate your technical team

As a manager of a technical team, you will be forced to determine what motivates your team and what you can do to get the very best results. Here are a few ideas to get better results from your technical team.

      1. Encourage Solutions over Problems – You will hear problems from your team, and your challenge is to encourage solutions over listing problems. Sure, every team will run into issues and the solution isn’t always the first thing that your team members will think about. You need to encourage the team to not focus on the problem, but the best possible solution. It will motivate your team to think through the issue and invite them to develop their own ideas for solving a problem. Remember to praise the effort, even if you don’t act on their proposed solution, to encourage the proper behavior of thinking past the problem.
      2. Reward Results – Every job has its good and bad days, so make sure you reward the team when everything goes as planned and the results show everyone has been working as hard as our expected. You have to remember that the work your technical team perform is often very difficult and frequently not appreciated by the rest of the organization. As a leader, your job is to get the best results from your team, so measure their contribution and provide rewards to encourage premium results and builds a sense of teamwork.
      3. Honor Expertise – A technical team has a level of knowledge that is unusual when compared to other teams in your organization. Don’t allow them to be treated like everyone else. Your technical team are experts in their field,  so of course you should treat them as experts. When talking to other managers and leaders in your organization, talk about your team as experts,  which will boost their reputation internally. To also boost their reputation internally and externally, encourage them to contribute to industry debates, technical publications, industry conferences, local user groups, and also look for ways to share their technical knowledge internally with mentoring junior colleagues and training opportunities.
      4. Communication – You need to find time to sit down and talk to each member of the team. Knowing why something is happening helps people tackle the work with a sense of understanding that is far more motivating than simply being told what to do. Poor communication is cited as the core issue in all failed projects.
      5. Avoid Troublemakers – You have to identify the troublemakers and keep them away from your team. The primary source of trouble are the people who constantly have negative things to say. While it isn’t always possible, identify the people who are not providing positive energy for your team and make sure they don’t have contact with your team.
      6. Embrace the Pain – Generally speaking, people make mistakes. Unless the mistake is as a result of intentional carelessness, use the mistake as a chance to show the team how to deal with issues the correct way. Start looking bugs or program errors as opportunities for improvement in processes or procedures. Hold a postmortem review and ask the team member who made the error to present the events that lead to the situation, asking the team to comment on what should have been done differently in a nonjudgemental environment.
      7. Encourage Growth – People want to feel there is a real opportunity for professional growth, so you need to delegate work to your tech team. They need a chance to take on non-technical or traditional managerial tasks on occasion so they can get a feel for what they might like or dislike about management.
      8. Promote Innovation – You people will have lots of ideas and new ways of doing things that could lead to significant productivity enhancements. Look for those moments of innovation and be prepared to reward anything that is adopted as a new best practice.

You need to treat your technical team with respect and challenge them to do truly remarkable things while they have fun and feel valuable to the organization.

%d bloggers like this: