Tuesday, June 24, 2014

CS Degree or Bootcamp?

After a few short weeks of our coding bootcamp it's clear that there is a different perspective on coding between those of us who go through a course like this and those who chose to go through a CS program at a University. There are definitely advantages and disadvantages to both approaches and it's clear that the market has adapted a need for bootcamp coders along with CS majors based on their proliferation in Silicon Valley as well as here in Silicon Slopes.

But how do the different approaches alter marketability? Or career options? Or even the fundamental way in which one looks at code itself?

The immediately obvious difference between the two options is the pedagogy. While both aim to teach coding skills, they start from opposite ends of the spectrum. CS majors start by learning the underlying elements of coding languages, hardware, and computing and eventually work up to a potentially cursory overview of high level languages and cutting edge technology that will be immediately useful in the market. Bootcamp style learning, on the other hand, starts from the opposite end of that spectrum. We immediately start with cutting edge technology and high-level languages to dive into actually building modern applications with little windows into deeper principles.

One of the common themes during our lectures is the power of languages like Python. It seems that our CS Major instructors have a deep appreciation for what can get done in just a few lines of code or import. This is most likely a result of miring through semesters of machine code, C, and less readable texts like Perl. Like a grandfather explaining that he had to wake-up at 4am to milk the cows everyday, CS majors attempt to explain our spoiled position of learning in an incredibly readable and powerful language with many built-in functions, libraries, and frameworks, all available to help us quicken production.

While some employers only a few year ago complained that boot camp graduates don't have the deeper knowledge required to solve more complex problems, others have gladly hired them on the basis of their extremely practical skill set. The trade off seems to be depth of knowledge for market practicality. Whether they hire a CS Major or a boot camper, employers will need to be willing to invest in their new-hires continued education in order to make them functional.

It may seem from the description that given time and money investment, bootcamp might seem like the obvious option as long as it's coupled with continued study and experience on the behalf of the individual. That may be true for some cases, but there are limits.

There are some companies like Google and Microsoft that won't even look at you if don't have a CS degree. If you're intention is to work for one of the big companies, chances are non-traditional paths to a career in programming will count you out.

Regardless of how you get into programming, the important thing is that you create a plan to continue your education through your job experience and personal study. Having a beginners mindset, being willing and flexible for change and new technologies, and broadening and deepening your skill set will serve you well. No programmer should ever think that they've arrived or that they are beyond improvement.

As part of my experience here, I will be creating a post boot camp graduation self-development plan that I intend to implement in my spare time to hit the ground running.

Monday, June 16, 2014

Evaluating Individuals with Software

If we understand that 88% of exceptional companies all have the dual characteristics of great execution and great environment for the employees, it becomes our task to figure out how to do both. As with other forms of employee optimization software, software that focuses on improving the environment of the workplace to make it more desirable requires data. After all, employee culture depends a great deal on the nature of the business they belong to and therefore naturally differs from business to business and department to department and even from one individual to the next.

The task of responding to the needs of your employees as a whole is a difficult one, let alone the needs of the individuals. And yet it doesn't take much in the way of observation to see that people can be vastly different in their perspectives or talents in the workplace. Public accolades and recognition may do fine for most of your employees, but there will likely be a few that would prefer monetary compensation or private expressions of gratitude rather than having their name in lights. You'll notice that some are motivated by group participation and participating to the collective goal while others will be more inclined to perform at their peak based solely on their own interests.

You may have also noticed that they will bring something different to their respectively positions. Some may assist in proceduralizing and regulating their department or work flow to ensure consistency and efficient logistical management. Others will bring a creative or innovative approach to getting the job done that has not been previously considered. Still others will be great at creating a harmonious conflict free environments or be capable of seizing opportunities others don't even recognize to advance the immediate position of the company of their department.

It's easy to view these differences as 'wrong' or 'inappropriate'. Managers will attempt to engage in a pygmalion project wherein they attempt to fashion their employees in their own image, rather than appreciating them for the respective strengths. Not only will you drive employees away by doing this, but you'll miss out on diverse talents that will add richness to your work ecosystem, and at the very least cause your employees to disengage.

But knowing how to respond to, motivate, or use the strengths of others can be an art in an of itself.  It is possible, particularly with the aid of employee management software that includes a method for discovering, storing, and using such information to engage and motivate employees to excel all while avoiding the inherent pitfalls.

At the core of such software would be a system of psychological profiling known as temperament theory. Temperament Theory attempts to get at the core of how the brain operates on a level that is inherited. It is at this level that we can understand motivations by looking at the four neuro-chemical profiles that people fit into.

In my next post I'll go over the four Temperaments and how software can be used to identify and manage each group.



Saturday, June 7, 2014

2 Technologies That Will Make Your Company Exceptional

Since the beginning of the personal computing revolution, the application of software to improve efficiency and powerful execution in business has been fundamental to its success. Starting with VisiCalc and moving onto the complex task management, work automation, and real time, networked reporting tools of today, SaaS model businesses have been heavily focused on increasing the productivity of individuals, departments, and leadership in business.

With the decline of our manufacturing base in the U.S., jobs have progressively shifted towards the service industry with SaaS being a main player. In reality, much of the prosperity of the United States over the last two or three decades is the result of this increased ability to simply get things done provided by computing.

Zenger-Folkman et al recently did a study evaluating qualities of exceptional companies. They looked at two primary factors:

  1.  Effective Execution: They attempted to look at the organizations ability to get things done effectively and quickly without waste, inefficiencies, or heavy bureaucratic impediments.
  2.  Positive Work Environment: They looked at job satisfaction rates, group harmony, whether the employees felt they were adequately compensated, and so on. Essentially all the things that would make a work environment enjoyable and harmonious.


They discovered that businesses that are great at effectively executing work have a 9% chance of being an exceptional company, while companies that are great at creating a positive work environment have a 4% chance of being exceptional. We would naturally expect that combining the ability to execute effectively and the existence of a positive work environment would give us the greatest chance of being exceptional. So what did Zenger-Folkman et all discover about companies that have both qualities?

Organizations that have both the ability to effectively execute and have a positive work environment have an 88% chance of being exceptional.

The whole truly is greater than the sum of its parts. In fact, given this data, that sounds like an understatement. I would submit that all organizational optimization fit into these two categories. 

As mentioned before, technology has primarily focused on creating effective execution, while the need for a positive work environment has largely been skipped over.  Don't get me wrong, a great deal of research, management training, and employee engagement software is deeply rooted in attempting to create a place where employees enjoy being. While there is plenty of information in the form of books, articles, seminars, webinars, consultancy and workshops, there are few, if any, actual tools that evaluate the core values, motivations, and particular Intelligence of the individual.

Just like in any effective execution improvement models, feedback is crucial to progress in creating a positive work environment and ultimately an exceptional company. This is where software comes into play. Simply gathering random feedback is not very helpful. A concise method for determining how and what information is gathered, what actions are taken to improve workplace environment based on ongoing feedback, and continual progress tracking would really be the meat and potatoes of such a system.

As an integral part of Positive Work Environment software, the understanding and documentation of the strengths, skills, and motivations of individuals within an organization would be a crucial part of how I imagine that type of system working to create an exceptional company.

In my next post I'll discuss the essential nature of understanding people, and how discovering and documenting your employees fundamental dispositions and temperament attributes can lead to great management; satisfied, creative, and productive employees; and organizational excellence.