Thursday, January 24, 2013

Why the boys club in STEM careers?



Seriously!  When I first got in to software development there were more women in the field.  Over the years, the numbers have dwindled.  I frequently speak in front of college and high school students that have expressed an interest in pursuing careers in the STEM fields – Science, Technology, Engineering and Math.  In most instances, the numbers are deeply lopsided.  Out of 20-25 students, only 1 or 2 will be women.  And that’s if there are any women in the classroom at all.  More significantly, when going through the interview process, the pools of candidates are male.  That has to change!

Look, driving to the best solutions usually means accepting input from a variety of people who have different views on how to achieve the goal.  Women bring a different perspective to the table and we should all be willing to give them a seat and listen to their viewpoint!

It needs to start early in their educational careers.  We must find ways to encourage and mentor young women so that they see a viable alternative in pursuing technical careers.  Listen, these are great paying jobs.  If you look at the projections through 2020, the US is going to need more and more technical professionals of all types.  (Here’s my shameless plug to any young women that stumble across this posting – think software development!)

Most young people that I meet today are concerned about finding work that will give them the ability to be self-sufficient.  They want to be able to work in a place where they can feel comfortable, where they feel that they can contribute, where they get paid a decent wage that allows them to pay their monthly bills and have fun with their friends.  Depending on where you’re located in the US – entry level jobs are starting around $60,000.  If you work in larger metropolitan areas the starting wages are likely to be at that number or higher.  More rural locations will depress that wage.

That’s not chump change!  Trust me.  My first professional programming job didn’t come anywhere close to that.  Yes, I’m showing my age. 

How many of you reading this post actively encourage the young women in your life to pursue a career in the STEM fields?  If you’re not encouraging them to look at these career opportunities, you should be.

Give me some feedback – how can we encourage more young women to think positively about the opportunities available within the STEM fields?

View my LinkedIn profile and request to connect: http://www.linkedin.com/pub/david-collison/1/640/503/


Sometimes you gotta laugh!



Ok, let’s be honest – work is tough.  But it should also be fun.  Somehow, someway, you need to find those moments of levity in the day.  You need to stop, set the keyboard to the side and share in the story, the laugh and the smile.  You need to spend a human moment with your co-workers.

Let’s start with the basics – there are 8,760 hours in a year, assuming you work 40 hours a week (yeah, right, most of us are working more than that) totaling 2080 hours, assuming you take 3 weeks of vacation a year (120 hours), that means that you are spending 1, 960 hours a year in the office with your co-workers.  Folks – that’s 22% of the year.  Let’s dig a little further – assume you sleep 6 hours a night for a total of 2,184 hours of rest, which would mean that you are awake for 6,576 hours each year.  If you then calculate the amount of hours in the office, you’re just shy of 30% of your waking moments being spent with the people you work with.

If you can’t find a way to be happy for 30% of your waking moments, you might need to think about make a change in life.

Over the years, I’ve worked in all sorts of companies – small specialized development shops, startups, consulting firms, high growth companies and international companies.  You name it, I’ve seen it!  Anyhow, while each place was different, there were always people that made it special.  People I could rely on to “have fun”.

When I was a partner in a consulting firm – we had a phenomenal team of players that worked hard, got the job done, but weren’t afraid to let their hair down.  I remember one day, my partners and I were in one of the offices reviewing the books.  Suddenly the door burst open. The staff had all gotten squirt guns and proceeded to douse us.  There was nowhere to hide; there were desks, filing cabinets and chairs.  And absolutely nothing to use as cover.  We all were soaked by the end of the encounter which lasted all of probably five minutes.  I love the fact that we had built an environment where the team felt comfortable that they could do that!

Another company that I worked for allowed the development team to essentially shut down mid-afternoon on Friday’s and we would then play video games at the office.  Talk about a way to build camaraderie within a team!   I don’t even remember the names of the games anymore, but I do remember everyone yelling between offices and taking the battle to each other.  It definitely gave everyone a way to wind down the week.

Today, because of the role I play, I sit in meetings for a good part of the day.  The secret to making that work is the relationships across the organization.  We’re all willing to get the job done, but we’re not afraid to have a few laughs along the way.  Our meetings are a mix of intense focus – broken up by those quick moments of laughter.  Sometimes it’s about the circumstances we find ourselves in, sometimes it’s about the various sports teams we root for (Go HAWKS!), and sometimes it’s about nothing at all – hey, sometimes you really do just have to sit back and laugh.

To me, it’s always been about finding the environment that allows me to thrive professionally, but also about finding the environment where I fit in and can have a little fun when the moment shows itself. 

I think the worst moments I’ve had professionally are when I’ve forgotten that rule.  If you’re in a job that’s driving you nuts – I would ask as simple question: why?

View my LinkedIn profile and request to connect: http://www.linkedin.com/pub/david-collison/1/640/503/


Wednesday, January 9, 2013

Make the decision to learn ...



In my last entry, I talked about the need for people interested in software development to download a compiler or mobile development tool and to start “playing”.  Using tutorials on the internet, reading books and, if they could afford it, classes at their local college.  With this entry, I want to expand on my last entry and talk about additional ways that people looking at a career in creating software can put a foot forward, expand their knowledge and get a leg up on the competition.

First, one of the things that I forgot to link to in my last entry was a list of some of the more popular scripting languages in use today.  These are all free to download.

Web Scripting Languages:


So, between my last post and the above links – anyone should be able to find a “language” that interests them and get playing.

The only computer languages that I learned formally were assembler, Cobol and fortran (and yes, that should be a reminder that I’ve been doing this for some time).  Since my education, I’ve taught myself language after language: RPG III, C, C++, C#, Clipper, VisualBasic, Java, Ruby, and frameworks such as Ruby on Rails.  Before the internet became accessible – that meant buying books at the local bookstore and immersing myself in the books to figure it all out.  The cool thing about development is that once you figure out how to program in one language – the concepts translate from one language to the next.  Picking up the next language is much easier.

It doesn’t matter what it is you attempt to do, but keep it simple at first.  Hit the internet and look for primers/how-to guides that introduce you to the language of your choice.  Get on websites for newbies and ask questions – lots of questions.  There is no question that can’t be asked.  The beauty about the internet is you’ll get answers to your questions by someone who has been there – in your shoes!

Once the internet came on the scene it dramatically altered the way that I could learn.  Suddenly, the world was my classroom.  I distinctly remember the first time I figured out I could post my questions to a developer board via the internet and get a reply.  It was close to 1:00 AM and I had been toiling away on a problem – attempting to understand how to do something in VisualBasic (VB).  I’d been programming in VisualBasic for several years at that point, but was attempting to build a fairly sophisticated client/server app that was going to need to sync between multiple locations.  As I sat there staring at the screen, I decided to put a question up on a developer site that I had been frequenting dedicated to VB.  Within an hour of posting my question, I had received answers from as far away as Australia.  While today, that is normal – back then, it was a new experience.

My direction to you – don’t be afraid.  It is ok to hit developer web sites and ask for help.  Someone will reach out to respond to you.  That’s the whole beauty of these sites.  They're frequented by experts that don’t mind spending some time passing along advice or knowledge to people that want to learn.  Yes, sometimes you’ll get a response from someone that really should have crawled out the other side of the bed.  But, most of the time, you’ll get answers or advice from people who genuinely want to see you succeed.

You can learn, so make your choice – pick a language and GO!

View my LinkedIn profile and request to connect: http://www.linkedin.com/pub/david-collison/1/640/503/

Sunday, January 6, 2013

Enquiring minds want to know ...



I meet regularly with high school and college students interested in the technology field.  No, not just software development, though, I must admit that I attempt to sway them to the field that has brought me success.  But any job within the technology arena.  You see, I don’t care if people want to program, repair computers, perform installation work, build and maintain networks, manage projects, or test stuff.  I just want them to do it!  There are fantastic opportunities within this field and the projections all show that we are going to need more of these people – not less!  If you doubt my word – go to the Bureau of Labor Statistics and look at what the job growth rate is expected to be through the year 2020 for ‘Software Developers, Systems Software’ and ‘Software Developers, Applications’.


As I meet with these students, there are several questions that seem to come up during the conversations.  Aren’t these jobs all moving overseas?  All the job postings want someone with experience – how do I get experience?

First, let me assure you – no, the jobs are not all moving overseas.  Yes, over the last 15 years, many jobs that were once done solely here in the US have moved abroad.  There were many reasons for this – but the most common one being that companies wanted to shed the payroll costs associated with their internal technology teams.  There are arguments for and against this – but this is not the place to debate those decisions, they were made.  What is interesting, is the pendulum has started to swing back and  we are hearing more and more companies wanting to bring those jobs back.  Maybe not as direct hires, but to on-shore organizations that are nearer their base of operations.

Additionally, there is a sizable chunk of the workforce that are baby boomers.  These folks are beginning to leave the workforce and somebody needs to be ready to fill those shoes.  Yes, most likely, people will be promoted to back fill those positions, but that only means that there will be more entry level positions opening up.  As people move up the ladder, those lower rungs are going to need to be filled by someone.  Maybe that someone is you!

So the jobs are there and will be there in the future.  According to various web sites that I’ve done research on – the current lead time to fill a software developer job is an average of 42 days (6 weeks) across the US.  Those numbers may vary depending on location.  But the overall story is the same – these are positions in demand.

At this point, I’m going to focus on software development – I’ll touch on other jobs in later posts.

Now you want to get noticed by a potential employer.  How do you go about doing that?  One, you need to have some level of training – yes, some companies will want formal educational degrees to prove that you know what you’re doing.  Notice I said some!  Many companies just want to see that you can do the job – so do it!  Most households now have computers in the home.  Find an open source programming language.  You can find open source scripting languages: Ruby, Python, JavaScript.  You can find open source traditional languages: C++, Cobol, Pascal.  Download it, get playing and make something.  Heck there are even open source tools that allow you to build mobile applications.

Traditional Languages:


Mobile and Web Development:


Then, sit down and learn!  There are tutorials on the internet.  There are books you can order from Barnes and Noble!  Open them up and start –now!  If you have the money and can find a way to swing taking a couple of classes at your local community college – do it!  Figure out what variables are.  Figure out what objects are.  Figure out what the scope of a variable is.  Figure out what control structures are.  No, you won’t become a software architect learning on your own, but you will at least be able to understand what the structure of a program is and how to create a program.

At some point, figure out how to use a database within your programs.  Download a copy of SQLite or MySQL and figure out how to get your programs attached to the database so that you can store information for your programs.

One – this shows initiative!  Two, you are ready to show that you can compete for an entry level job.  Notice I said ‘entry level’.  Don’t expect to walk in and compete with the folks who’ve been doing this awhile, this is about getting your foot in the door.

In future posts – I’ll talk about additional ways that you can gain experience that will differentiate you from the pack and give you a step up on the competition.

If you'd like more information on my background: LinkedIn Profile

An Introduction ...



Hello!  First, I’d like to introduce myself.  My name is David Collison.  I touched a computer for the first time when my friend showed me an old teletype terminal sitting in our middle school at the ripe age of 12.  Yes, a teletype terminal!  (If you don’t know what a teletype terminal is – that should be your first clue to the fact that I’ve been in the technology field for a long time.)  I pretty much knew right away that being around computers was what I wanted to do with my life.  And, 36 years later, I’m still at it.

I’ve done everything from sell computers – the original IBM PC’s and compatibles, to installation and repair work.  I’ve created and taught various computer classes.  I eventually found a job as an applications developer and worked my way up to management.  Today I am in the role of Vice President over Applications Development Teams – programming, project management, technical leads and quality assurance.  I’ve worked in small companies and large multi-national firms – I was also a partner in a growing consulting firm.  I’ve managed team members, budgets, customers and had failures as well as success.  I love what I do.

No the developer jobs aren’t all moving off-shore.  Many companies are beginning to figure out that due to intellectual property and real costs associated with having software development off-shore is not beneficial and are beginning to move many of these jobs back to the US.  If you have any doubts, look no further than the fact that GM has made the decision to insource its IT work – bringing 10,000 jobs that had been outsourced.  The following URL links to one of the stories that discusses the GM strategy to insource their IT work.


Yes, the pendulum swings, and IT work is readily available for those that want to find it here in the US.

That said, you can’t just decide you want to be in the technology field and go find a job.  Once must either get training or find ways to get experience so that they have the skill set that employers have as requirements for the various jobs that are available.  If you want to be a programmer – get trained, find a way to create programs and be able to talk about your experiences.  If you want to be a technical project manager – maybe you can volunteer to lead technical projects in your current company.  If you want to repair computers, build networks or manage telecommunication – find a way to get trained and potentially volunteer to use your new found skills to help out your church or a local charity.  Use these experiences to break in to the field.

I’ve started this blog because I’m passionate about what I do!  This is a great field to be a part of – lots of opportunities, the money is good and it is never boring.  I want to encourage others to look at getting into technology.  I want to tell stories that reflect on my experiences as a developer, as a project manager, as a manager and as a recruiter.  Hopefully, along the way, I’ll spark an interest in someone out there!  Because, folks that’s what matters – getting the next generation interested in making a difference.

If you'd like more information on my background: LinkedIn Profile