Showing posts with label Leadership. Show all posts
Showing posts with label Leadership. Show all posts

Saturday, August 8, 2015

Some Books to Help Develop You Professional Skills

We often here the term "soft skills" when talking about personal development, but I prefer to call these professional skills, because I think that better describes the skills we are trying to develop.  When we talk about skills like time management, communication, the ability to work in a team or work independently, the ability to make good decisions, I think what we are really talking about is someone's ability to work in a professional environment and carry themselves as a professional.

So we will often hear someone say "This person needs to work on their soft skills".  We might even hear someone mention a specific soft skill, like a person needs to work on their communication skills.  But what is often missing from the discussion are the specifics of how to work on these skills.  Without the how, these phrases are just empty advice.

I read not only technical material, but also quite a bit of material on what I would consider professional skills.  As you would expect, some is good, some is OK and some didn't meet my expectations.  What I have done below is summarize the best of the material I have read and spelled out why I think each particular resource is worth the investment of your time.

As a technical professional, we have to devote a lot of our learning time to technical skills, whether that be development languages and techniques, IT Pro skills or different techniques around analysis and project management.  But everyone still needs to set aside some time to work on these professional skills.  So with that in mind, lets take a look at the list:


Personal Kanban


We've all heard "You need to work smarter, not harder".  Ever notice that no one ever tells you how to do that?

Kanban has its roots in the Toyota Production System and has two essential rules.  Limit your work in progress and visualize your workflow.  By limiting your work in progress, you actually get things done faster because you are focused and not constantly expending cycles to switch tasks.  By visualizing your workflow, you you can better understand the work you have in front of you an prioritize the right things to be worked on first.  Personal Kanban shows you in detail to apply these principles you your personal workflow  The result is that you feel more in control of what you are working on and can make the right choices about what needs to get done when.



The 7 Habits of Highly Effective People

This is a book that every professional in every field should read, and then probably re-read every few years.  The seven habits laid out by Dr. Covey (Be Proactive, Begin with the end in mind, Put first things first, Think win/win, Seek first to understand, then to be understood, Synergize and Sharpen the saw) are habits that none of us will ever truly master, but we must always be improving in order to improve our personal effectiveness.  Dr. Covey also describes how the goal is to have a team of interdependent people working together, who combine their skills to be more than the sum of their individual talents.  But to do so, everyone must first grow from a stage of dependence to interdependence, and then achieve a level of trust with others that make us interdependent.

This is not a book filled with cliche's and pie in the sky pictures.  There is real advice in this book about how to improve yourself in these areas and as a result improve your professional life.  The seven habits are timeless and serve as the underpinning of all of our achievements, which is why it is so important that we are aware of these habits and constantly striving to improve in these areas.


Decisive

We make decisions all of the time.  However, most of us don't have a good process for making decisions.  As the first chapter of this book discusses, neither do most companies.  As a result, the success rate of the decisions we make is much lower than it should be.

Decisive is all about how to refine your decision making process so that you can make more informed and ultimately better decisions.  The author's first explore the reasons why we tend to make bad decisions, like limiting our options or favoring information that supports a position we are pre-disposed to.  Then, they discuss techniques that help you overcome these shortcomings in our decision making process.

After reading Decisive, you will have the tools to be a much more analytical decision maker, who considers a wider variety or options and knows how to really test if your assumptions are valid or not.  And you will learn how to set tripwires after you have made a decision to make sure that you have indeed made the right choice or you need to reconsider.

Delivering Happiness


As I continue in my career, I have realized how important customer focus is.  Everyone has a customer, and if that customer isn't happy, they will find someone else that can better meet their needs.  This is even true for internal customers.

Today though, customer satisfaction is about much more than just "checking all the boxes" or "we delivered what the customer asked for".  Tony Hsieh (CEO of Zappos) introduces us to the concept that we have to delight our customers.  And this is so true.  When we delight our customers, they become our biggest supporters.

There is much more to this book, and a lot of it is about new thinking in terms of leadership.  Zappos doesn't track the time its customer service associates spends on any one call because it trusts them to do the right thing.  And for associates who join and decide Zappos isn't the place for them, they will actually give them a lump sum to walk away, no hard feelings.  These are refreshing new ideas about how to lead a company, and will challenge you to think about leadership differently.


Drive

I strongly recommend that anyone in a leadership position, whether formal or informal read Drive.

Mr. Pink describes how we have managed people for the last hundred years or so in a top down, hierarchical fashion and why this mode of management is outdated today, especially for knowledge workers.  He describes the differences between extrinsic motivation (e.g. financial incentives, carrot and stick approaches) and intrinsic motivation (people who are self motivated to do a good job based on the purpose), and he explains why intrinsic motivation is always superior to extrinsic motivation.

Pink describes three factors that lead to true motivation: autonomy, purpose and mastery.  It is these three factors you need to make sure everyone has in order to insure they are truly motivated to do their best work.  Making sure these three factors are present is the key to making sure that people are intrinsically motivated, and ultimately to performing their best.  This isn't about motivating people, but about creating the right environment where people are intrinsically motivated to do their best work.



Turn the Ship Around

There are a lot of books that have been written about leadership and many of them are filled with empty cliches and advice.  This book is the real deal though.

Written by a former US Navy submarine Captain David Marquet, this book talks about creating leadership at all levels and about how you can effectively move away from the command and control structures common in most organizations.  In the beginning of the book, he talks about so often someone starts a new job with excitement and the feeling that they can make a difference, only to be completely burned out and disillusioned 6 months later when it is clear that they have no power and decisions flow from the top.

This book describes the practices and challenges envountered by Captain Marquet as he took the USS Sante Fe from the worst performing ship in the fleet to the best.  What I liked most about the book is that Captain Marquet doesn't just tell us his success stories, he also tells us about the failures along the way, how he was tempted to go back to the old command model and how he ultimately overcame them.

Whether you are in a formal or informal leadership position, this book is well worth your time.  We so much need everyone to feel as though they can take the initiative, to contribute their ideas and that their voice matters, and this book shows you how giving away control to those around you can result in a better organization that truly does value everyone's contributions.


The Essential Drucker


Peter Drucker is known as the father of modern management, and his advice today is as relevant as it was 50 years ago.  You might think that because much of these writings come from decades ago, they would be out of date in today's world.  Not so.  Mr. Drucker was a man who was truly ahead of his time.

This work covers every aspect of leadership in an organization, fro having a clear objective to strategy to hiring to problem solving.  There are not many areas it does not touch on.

This was one of the first business books that I read and I still consider it one of the best.  Probably what I like most is how plain spoken the advice is.  Again, as with all of these books, there aren't any unicorns.  There is simply real hands on advice to real, every day problems that are encountered by people at every level of the organization.





As time goes on, I'll add more books to this list, so you may want to check back occasionally.  Most of these books you can get an eBook copy from Amazon for around $10-$15.  I would recommend this approach because many of these books you may want to refer back to or re-read at different times to refresh yourself on the principles they share.  If cost is an issue though, don't hesitate to check your local public library for a copy.

I hope you enjoy the list, and if you have any reading recommendations for me, put them in comments below and I'll try to get to them.



Sunday, June 29, 2014

Using Pluralsight to Help Your Team Learn and Grow

This last week, Pluralsight published my first course title Oracle Performance Tuning for Developers.  But I am not just a Pluralsight author.  I use Pluralsight for my when I need to learn something and as the goto resource for when someone on my team needs to learn something.

I have managed an application development team for 3 years now.  One of my core beliefs is that as someone's leader, it is my job to help them grow and learn.  Learning is not confined to just technology skills, but at its core, application development is an engineering discipline, and there is just no way to escape the fact that you need good technology skills.

Often times you will see people who are 10 years into their career, but the work they do is that of a junior level software engineer.  They don't know about breaking code into different layers, using design patterns or how to distribute responsibilities between different components.  Sadly, too many people are 10 years into their career but don't have 10 years of experience.  They have just repeated their first year 10 times.

I do firmly believe that every professional needs to take responsibility for their own development.  No one can learn for you.  You have to make an investment in yourself if you want anyone else too.  At the same time, too many IT leaders are just worried about meeting project deadlines or insuring the next release doesn't blow up to devote the time to making sure their people get the skills development they needs.  This is unfortunate and only contributes to people gaining another year of tenure but not of experience.  Oh yes, we fill out an individual development plan every year in January.  But then it is stuffed in a drawer not to be seen again until the following January.

Sound familiar.  Unfortunately this is all too common.

A Better Approach

A few years ago, if you wanted training, you would find a class at a learning provider in your area and sign up.  This involved being out of the office for about a week and the cost was generally somewhere between $3000-$5000.  While this is still the best way to learn some things, there are several shortcomings to this approach:

  • You are taking a course on someone else's schedule.  Too bad you need to know how to write a WCF service next week.  That course isn't offered again for another three months.
  • The cost.  Sadly, most organizations budget very little per employee for training, and certainly not $3000+.  So the result is often times only a handful of employees get to go, or maybe none at all.
  • The throughput.  Because of time away from work and the cost, you are effectively limited to taking one course a year.  The problem is that the way software development has moved over the last 10-15 years, you need much more than that.
I've always been a fan of the Pluralsight model.  Long before I auditioned to become an author, I had my own Pluralsight subscription.  Even 3 years ago, when the catalog was much smaller, there was still more training than I could ever hope to watch.  The training is up to date on current subjects, and I can watch as much or as little as I need to in a given week.  All for $50 a month.

Making Pluralsight Work For Your Team

The purpose of this blog post isn't to be an advertisement for Pluralsight.  It is about how to make Pluralsight subscription work effectively for your team.  This is all about outcomes.  If all you do is buy subscriptions for your team and say "go at it", you are most likely not going to get the outcome that you want.

What I have done with my team is come up with a personalized development plan for each person, based on where their current skill level is at, where their interests lie and what our needs as a team are going forward.  I then break this down into the exact courses to watch and a schedule of when they are going to watch what modules.  Generally, everyone is assigned to complete two hours of training a week.  I tell people to block that time out on their calendar to make sure that they have time reserved to complete the training.

Here's a sample of what a plan might look like for someone who is new to C#.

Employee: Joe Learner
Course Module Time Complete By
Accelerated C# Fundamentals An Introduction to C# 53 minutes July 7, 2014
Accelerated C# Fundamentals Classes and Objects 49 minutes July 7, 2014
Accelerated C# Fundamentals C# Types 59 minutes July 14, 2014
Accelerated C# Fundamentals C# Events, Types and Methods 55 minutes July 14, 2014
Accelerated C# Fundamentals C# Flow Control and Exceptions 49 minutes July 21, 2014
Accelerated C# Fundamentals C# and the CLR 52 minutes July 21, 2014
C# Collections Fundamentals Introducing C# Collections 31 minutes July 28, 2014
Accelerated C# Fundamentals C# and Generics 46 minutes July 28, 2014

Part of the reason for doing this is to provide everyone with some structure.  Spelling things out like this, printing it out on a page and handing it to someone helps to clarify exactly what the expectations are.  And now this person knows exactly what they need to do.  This is much better than making a vague statement like "Check out some of the courses on C#.  I think there are some good ones out there."

Then, each week in everyone's weekly one on one, we devote about 30 minutes to discussing the training they completed the prior week.  Doing this every week has several effects.  
  • First, it puts front and center that personal development is a goal, for the team and each individual.  This constant reinforcement helps everyone to see personal development as a habit, not something that you just do occasionally.  This is essential.  We want to create an environment where we are in the mode of constantly sharpening our saw.  We want to make learning part of who we are, our identity.  Following up every week helps reinforce that notion
  • It allows each person to ask questions about things they didn't understand.  Don't get me wrong, there are lots of great courses, but nobody understands everything 100%  the first time.  Maybe there is a concept that just didn't resonate with that person while watching the video.  No problem, that is what I am here for, to help clarify those concepts and cement what has been taught.  I tell everyone take notes during the videos--just like when you were in college.  And write down what you don't understand.  Then we can go through it together to make sure that you are mastering the material, not just checking off courses you have been watched.
  • It allows me to ask some probing questions to see how well someone understands the material they just watched.  My purpose here is not to be cruel or show someone up, but to measure understanding and reinforce concepts I have found to be especially important.  Sometimes someone thinks they understand a concept, but in reality, they are a little fuzzy on it and don't want to admit it.  Sometimes they think they understand but maybe they don't really understand to the depth that they need to.  This is OK.  I want to identify those things so we can work through them now.  Maybe that will be scheduling some extra time with someone to go over the concepts again, but I would rather find out now than in 6 months when we are doing a code review.  This also gives me an insight into if we need to speed up or slow down for each person.
  • We have also started to incorporate some coding exercises for some core concepts that we want everyone to learn.  Much like an assignment in college, we give everyone a piece of code and have them put together a solution.  Then we'll talk through that solution in a future one on one.  Sometimes, people find things we a whole lot easier when the Pluralsight author did them in the webcast than when they try to do them on their own.  Again, this is OK.  It gives us a way to find out what the blocker is for someone and help get them over that hurdle.  Again, the outcome we are seeking is mastery of the material so they can apply it in their other projects.
This does take a lot of time, and when I say that, I am talking about my time.  I myself watch every webcast that one of my people watches so that I can effectively speak to what the author said and help clarify if need by.  It also means that I will spend some extra time outside of one on ones helping people in extra sessions when something doesn't make sense.  Is it worth it?  The answer is a resounding YES.  Again, one of the core requirements of my job as an IT leader is to develop my direct reports.  In many ways, this is my most important deliverable to the organization.  Leaders are supposed to be multipliers.  This is one of the ways I am a multiplier for my organization, by growing the next crop of software developers who have the skills we need.  I really couldn't think of anything that is would be more important for me to do most weeks.   

So what do my people think?  I think you are always afraid that when you push something as a leader, you will come across appearing heavy handed.  As it turns out, our people love it (I say our people because one of my fellow leaders is doing the same thing with his team).  People say that in years past, they had learning goals, but even when they completed them, they never felt like they really learned something.  Now, having someone to discuss what they learned with and doing it right after they viewed the material really reinforces those lessons.  Multiple people have told me that the constant follow up is the best part.  

As it turns out, it is also a exercise that builds trust within a team.  Sometimes, someone doesn't know how to do something, but they are afraid of admitting that to their manager because they will get yelled at or even worse.  But through this experience, one of the things your direct reports learn is that you really care about their development.  They see the time invested in them and they see that this is about making sure they are learning, so it becomes easier for them to talk about areas they don't feel comfortable.  Part of creating a learning culture is letting people open up about what they don't know so you can put a plan together to help them over that hurdle.  Working together to identify and resolve these items helps build trust in a team.

Putting a Plan Together for Your Team

Usually one of the hardest things to do is to get started, so if you are still with me at this point, hopefully you are motivated to get started with your team.  What I suggest is putting a plan together for each person that encompasses about 3-4 Pluralsight courses such that you end up with about 20 hours of video to watch.  This will end up taking about 3 months because some weeks people may only have time for one hour, people are out on vacation or a myriad of other factors.

What is important though is that you and each of your team members spend some time on learning each week and discuss it on a regular basis.  If you want, you could discuss every two weeks rather than weekly.  I wouldn't go a month, because that is too long and after all, part of what we are trying to do here is create a habit.  So commit to having everyone watch at least an hour of courses a week and follow up with them to see what they learned and how they are doing.

What if you are in a leadership position but you aren't technical?  In that case, have one of your senior developers or an architect review the material with each of your developers.  This may require reaching out of your group to find this person who can mentor, but it is as important to have that follow up with each person as it is to watch the courses in the first place.  Make sure you select someone who is a good mentor and can clearly explain things to keep the experience positive for each of your direct reports.  The most important thing is that your people have someone they can go to when they have questions.

I think what you will find is that people will embrace learning.  Teams often take on the personalities of their leaders, so if you as a leader put a priority on learning, team members will too.  Most people will be impressed at the investment that you are making in them to grow their skills.  And that is the outcome we are after.  Better developers who have better skills who can take on larger and more complex projects and produce better results.

That is what has worked for me.  If others have any other ideas, I would be interested in to hear about them in the comments section.