Leave a comment

Fake News – Java is Dead!

Roger FrechBy Roger Frech, Senior Software Engineer

“Java is Dead”, “Java is Dying”, “Java is Obsolete” and other variations on the meme of Java mortality appear frequently on line in the IT “press”.  These are click-bait, intended to draw your attention to a headline, or get some cheap SEO.  For the more complex and nuanced truth about trends in Java usage – look beyond opinions for evidence.

Continue reading


Leave a comment

VPN = Vocational Productivity is NONSTOP!

By James Cavazos, Senior Performance Test Engineer

In most tech companies, it has become commonplace to have VPN access to allow for working remotely. This can allow for greater productivity and flexibility for employees should they need to work from home or during business trips. It can also lead to some drawbacks. If you are not careful you could see a lot of your time-off spent doing work to the point that it feels like you never left the office. This can be especially difficult for workaholics and people with mindsets that can’t leave things unfinished.

Continue reading


1 Comment

A Practical Look at Go, Part 1

By Ken Walker Senior Software Engineer

About two years ago, I was working on a project written in the Go language. Go was originally developed by Google in 2007 for internal use, but was later released (open source) for general use. The project I was on was a large enterprise-wide service that collected large amounts of data (and did it well). This article introduces some of the interesting aspects of the language that might entice you to consider it for your own use, while pointing out a few things of which to be aware if you do.

Continue reading


Leave a comment

The State of Being Secure: A Primer on Security in your Organization

Karel Gonzalezby Karel Gonzalez, Senior Software Engineer

A few weeks ago, I had the opportunity to attend the Lonestar Application Security Conference here in Austin. Security is something I have always been mindful of during my development, but I still felt a sense of futility about it. I ask myself on a fairly regular basis “I’m doing something, but am I doing enough?” Continue reading


Leave a comment

Continued Education: Whose Responsibility Is it – Employer or Employee?

by Phil Smith, Vice President Client Services

PhilThere is a large volume of material circulating on the Internet, providing philosophical approaches to lifelong learning for individuals. The concept of “continuous learning”, as it applies to the workplace, tends to revolve around these two generally accepted definitions:

  1. “Ongoing learning process that seeks to incorporate the lessons learnt (from the results of already implemented changes) into a continuous improvement program” (http://www.businessdictionary.com/definition/continuous-learning-activity.html), and…
  2. “Total quality philosophy in which every process and system in a firm is subject to constant scrutiny to (1) eliminate waste, (2) reduce response time, and (3) simplify process or product design” (http://www.businessdictionary.com/definition/continuous-improvement-program.html).

These links will take you back to the core concept that organizations must base their manufacturing and/or services on processes, and that once established, processes must always be under formal measurement, scrutiny, and improvement. If you are in a knowledge-based industry, such as software engineering and quality, then you have to extend the concept into your training program. Training must be viewed as a process and must always be improving. This applies to your own skill set as well—it’s not just about process capability, but also about people capability.

There is some overlap with workplace continuous learning (employer sponsored improvement) and self-improvement (individual sponsored improvement) in a few articles that I recently stumbled onto where the authors were clearly unhappy with current or past employers’ training programs. I’m not providing links because in many cases it was obvious which employer had caused enough emotion to ignite a blog. However, these articles do raise interesting points, specifically, who is responsible for an employee remaining current with their technical skills:  the employee, or the employer?

I’m referring to widely accepted workplace concepts related to improvement; not just improvement of the product or service, but also improvement of the human capital used to deliver. I’ll state my opinion clearly right here: the employer is responsible. Organizations that rely on people’s knowledge, skills, and efficiencies have a significant responsibility and market incentive to keep their workforce as far ahead of the competition’s workforce as possible.  These organizations have a social and economic responsibility to provide formal plans for training and they need to execute those plans with relevant material. The results and methods the training uses must be measured and improved over time.

I use the term “economic responsibility” because training is actually a pursuit of efficiency and improvement. Without these investments, companies lose ground to competition and ownership value erodes. Additionally, leaving training solely in the hands of employees will result in poor alignment with company objectives and unpredictable results.

I use the term “social responsibility” because the software industry typically keeps people so busy working billable hours that we don’t make time for training programs. We create them; we just don’t execute them. Cost pressure from offshore providers has left US-based resources in a predicament, because training costs are no longer easily hidden inside billing rates. Therefore training programs get sorted to the bottom of the priority list and do not receive attention. In some cases, recent graduates end up more qualified in relevant technologies than long-term industry experts. Technologists who do not take it upon themselves to learn relevant technologies may end up on the wrong side of the cost benefit curve, which certainly feels unfair to the many who work long billable hours to make their company successful.

Other industries such as health and legal, which are knowledge based, require that people be licensed, and that licenses be maintained over time on the basis of formal, ongoing education. We’ve missed this concept in the software industry, which has been convenient in that it allows us to be informal with our staffing decisions and enables us to exchange hours that should be dedicated to training and certification for more billable hours.

On the flip side, you can’t argue with free market economics. Graduating students will always have some advantages that may or may not outweigh their lack of experience, and offshore resources will always have some cost advantage that may or may not outweigh distance and other factors. Employers will always have challenges with cost and commitments, resulting in pressure for more billable hours. In the end, the only person that can be held responsible for a person’s career plan, training, and marketability is the person. Life just works that way.  Making sure you are marketable is basically the same as being a gazelle out on the plains. Fast and capable is essential. With that in mind, if I could personally meet the people whose blogs read like, “it’s not my fault,” I think I’d have difficulty finding sympathy.

So, is the employer responsible for training, or is it the employee? Yes.


1 Comment

Growing Pains — How to Grow From Small to Big

by Brenda Hall, CEO

Brenda_Hall_100_x_120I’ve often been asked, “How hard was it to start your company?” My answer continues to be, “It’s not hard to start a company; it’s hard to grow it!” Simply said, anyone can start a company as long as they desire to. It takes someone willing to take risk, believes they have something someone else is willing to buy, and believes passionately enough in their idea to push other, more ‘stable’ options aside such as working for someone else for a paycheck. Getting started isn’t difficult. There are endless examples of people baking their products at home and selling them through local outlets. Or, perhaps you know someone who has exceptional knowledge in a specific area (think software development) who is keen to develop that perfect app for our phones. A short cruise across the internet can provide the applications to fill out for the Secretary of State for your local state, open a business account at your bank, and without much more ado…you’re in business.

Growth, however, requires tenacity, dedication, gathering smart people around you and hard work day-in and day-out. There will be times when mistakes are made, and standing up to them to preserve your reputation while ensuring your clients don’t pay for them is paramount. You will never grow if you don’t have delighted clients. Here are a few, key lessons I’ve learned that will help any entrepreneur get off on the right foot.

  1. Make sure your company values are visible to all of your employees. Even more, try to hire employees who SHARE your values. Values are important because people need to work with other like-minded people. For example, you want people who not only respect your leadership and believe in the mission of your company, but also people who ACT on those same values especially when challenges enter the picture. Not every effort or client engagement will go smoothly or perfectly. You need to have people who will quickly work to fix errors and repair relationships. You need people you can count on to Do The Right Thing.
  2. Speaking of employees, I’ve learned it’s critical to hire well. Take your time to find the right person. It’s not always about whether you like someone, or assume someone is a good fit because they worked at a major company before landing in a chair in front of you for a job. WAIT…do your due diligence. Make sure you investigate their background thoroughly. Talk to people they worked with. Check them out on LinkedIn. Check them out on Facebook. I learned from a dear man who utilized LinkedIn to garner as much ‘intelligence’ about a potential employee he was planning to hire. Then, he went to Facebook to find out what kind of person he was planning to hire. Good advice.
  3. Surround yourself with people smarter than you. This is extremely important, and there is no room for ego to get in the way. Networking is essential in order to meet the kinds of people you would hire if you could…but necessarily can’t. For example, I’ve met several, extraordinary people through the years who have become trusted friends and mentors. They’ve guided me through tricky decisions, helped me sort through the noise and chatter to achieve specific goals, and continue to support my company’s growth in a way that brings efficiency as well as success.
  4. Listen, listen, listen to your clients. For me, the sales process is very personal. I’ve no professional sales experience, but I learned a long time ago that sales is truly about listening and keeping the lines of communication open and active. Once you make a ‘sale’…don’t forget that sale involved someone trusting you to deliver the goods. Make sure you deliver them. Make sure you follow through with your client to see if they have any questions. The world is ripe with people who feel let down after a sale was made. Don’t let that happen. If you want your company to grow, you’ll need strong referrals, testimonials and REPEAT business because you did well the first time around. You LISTENED to your client, you did what you said you were going to do for them, and you made sure they were delighted throughout the experience. This is a formula that should NEVER change.
  5. Enjoy the journey. This isn’t about how big, how much, how well known your company becomes. This is about making sure you recognize the achievements of your people, the successes they’ve brought with each client effort, and how well they’ve made your life — and kept the breath of life in your company. I don’t believe anyone gets very far on only the leadership of a few people at the top; it takes a team. I once went to the top of the mountain to visit Neuschwanstein Castle in Bavaria, Germany. The road is very steep and the wagons we rode were pulled by a team of strong (and beautiful) draft horses. I thoroughly enjoyed the journey, but I’ll also never forget the hard work those horses had to give to provide me that enjoyment. Enjoy the journey, but don’t forget your team that brings you success.

There is so much more to share, but I believe if you adhere to these 5 guidelines, you’re well on the way to building the solid foundation that gives your company all the growth potential you will need through the years.