August 30, 2014
1061 views

Market Basket MBA

Last year, New England bore witness to a brand-new MBA case study. A multi-billion dollar private business, DeMoulas Super Markets, found itself in crisis as workers began protesting and customers began boycotting. Weeks dragged into months, and profits spiraled down to near zero. Shelves and parking lots were empty, and public perception of the brand (which had previously been excellent) was greatly suffering. And what was the reason for this corporate disaster? In a shocking twist to the typical script of worker protest, the desired reward was not better pay or benefits, or the reversal of poor environmental or political action, but rather the maintenance of the status quo; the workers and customers demanded only the reinstatement of a beloved CEO.

The origins of the debacle were simple: Arthur T. DeMoulas, the previous (and now current) CEO of DeMoulas Super Markets, held 49.5% of the company voting stock. Arthur S. DeMoulas (the cousin of Arthur T. DeMoulas) and his supporters held 50.5% of the voting stock. Midway through 2014, the board opted to remove ATD from his executive position and install two outside co-CEOs in his place. Being a closely held private company, the board was never obligated to publicly release meeting notes or any formal reasoning for the removal; however, the narrative had been that the majority voting block was unhappy with how much ATD had been spending on employee benefits, as well as with how low he was keeping product prices. Under ATD, the company offered highly competitive compensation, retirement benefits, and scholarships to employees, and was famously engaged, even on a personal level, with all, including low-level workers.

The corporate world has been under substantial scrutiny for decades, with noteworthy intensity in recent years; many larger businesses have been accused of unchecked greed and an uncaring employee and customer policy. Worries today are fervent over income inequality, the bolstering and corruption of the rich (and their influence in politics), and the mistreatment of the middle class. It was therefore quite fascinating to see thousands of workers and millions of customers spend their time, energy, and paychecks in service of a millionaire boss. Regardless of your position on the core issues at debate, there is little doubt that the crisis demonstrated the power and influence of being a "good boss." If an employer treats their employees well, and shows a genuine respect and interest in their well-being and advancement, then those employees can be endlessly loyal.

It is especially note-worthy that neither player in the Market Basket feud represented the underdog. Both ATD and ASD were (and remain) very rich men. The generous policies of ATD did not meaningfully harm shareholder interest or unfairly keep executive, investor, or board member compensation low. The business was (and remains) wildly successful, with over seventy stores operating throughout New England that reap several billion in annual revenue. While there no doubt exists some opportunities for maximizing profit and further bolstering top-tier compensation (there is always more opportunity for such changes), by forgoing just a very little off the top, ATD was able to garner limitless favor from nearly the entire company below the board, as well as a large amount of the customer base. It is a testament to the power of conscientious management.

It is not a wholly unique perspective on corporate governance and responsibility. Another grocery chain, Whole Foods Market, has become equally famous for their quality treatment of employees; in fact, the founder and co-CEO, John Mackey, wrote a book (and began a subsequent movement) about the principle of good governance: Conscious Capitalism. He argues that careful management of any business, with a balanced focus on creating value at all levels of interest, can create powerful and lasting corporations that maintain public trust and respect while still greatly enriching the lives of it's corporate operators. Other examples of conscious governance include The Container Store and Costo.

This issue, alongside other examples of responsible corporate actors, will almost certainly become a staple of debate in business school programs for years to come. The battle between moral action and profit at all costs has always been a tension point in business curriculum; where does the ideal balance lie? It does seem, however, that the modern trend is toward increasingly better treatment of staff. Ever more leaders in business have begun to take positions on the dangers of unrestrained greed and top-level growth, and warned against a possible coming correction for those businesses that are willing to mistreat their staff in service of next-quarterly growth. Although, contrary examples persist, as some companies still reap enormous growth in the face of public disgust (example: Wal-Mart). No doubt the debate over best practices in corporate governance will be ongoing for decades hence, but the story of Market Basket has made a compelling case for erring on the side of positive employee treatment.

If nothing else, the world of business is never boring.

July 31, 2014
990 views

Never Forget the API

In the world of MVC web development, there exists a relatively clear understanding of what constitutes quality architecture. The specific technologies at the edges of each node can flex and change (and often do), but the topology and interactions are fundamentally consistent. Whether it is PHP, Ruby, C++, or JavaScript at the core, each component has it's part to play in ensuring maximum stability, extensibility, flexibility, and load tolerance. One particularly important node in this overly simplistic diagram that I want to spend some effort further defending as necessary: the API.

It doesn't matter to me what specific technology operates the API (I have my professional preferences, but that is for another discussion); what matters most is that the API exists and is managing all data interaction. It is tempting in the early stages of development (especially in a young start-up with no time to spare) to manage data directly in the webhead, but that will almost inevitably cause problems down the road. First of all, writing database code within a webhead in a way that doesn't risk the performance of the instance is a challenge, and few truly undertake the effort. Furthermore, tying database work to the webhead also ties the performance of the database to the webhead (and vice versa) and removes the ability to scale each side up or down independently. Finally, by putting the database work into the frontend codebase you will make it difficult to manage changes to the database schema, while also hampering your ability to further leverage your product down the road.

The API should be to the backend what the load balancer is to the frontend: It will field requests, defend against nefarious actors, queue work to ensure proper timing and execution, and will manage the data caching and handle errors. Similar to the frontend, you should be able to scale up (or down) the number of API instances to field varying amounts of load, and selectively direct to traffic to any number of instances based on a set of automated requirements. Maintaining this clear separation will make it easier to modify many pieces of the puzzle without negatively impacting the whole, as well as simplifying testing and automation.

API-driven development should be a cornerstone of web development, and many of the best websites already live by this philosophy. And I will always recommend doing this at the beginning, before even the first customer sends that first request to the server; it will be costly and painful to do it late in the game, when scalability and flexibility are already a problem and you have a userbase yearning for faster response times and more reliable performance. There are shortcuts worth taking in the early days of development, but this isn't one of them.

July 08, 2014
1024 views

Creating Technologists

In compliment to a post that I wrote just under two weeks ago (wherein I espouse the often misunderstood value of a good technologist, and the compensation that they are capable of demanding), I wanted to follow up with a general plea to the youth of the world:

Pursue technical careers!

In addition to a general science crisis in which students are insufficiently prepared for, or pursuing, STEM programs, there is also a further specific crisis in the field of computing. Of the projected 8.654 million jobs by 2018 in science and technology, a full 71% of them are expected to be in computing (representing 6.144 million jobs), with opportunities existing in nearly every American state (and around the world)! Yet despite this booming market in a profession that touches nearly every industry and sector, American colleges produced only 13,055 new CS graduates in 2013, and admissions to, and graduations from, CS programs have been increasing only modestly in recent years. It is time that the youth of America get a renewed exposure to the computing fields!

And it can start with the parents...

There is an oft-repeated belief in some parenting circles that the simple usage of technology increases exposure to the opportunities of technology. This is a dangerous fallacy; simply using my car doesn't give me any skills for diagnostics and repair. Rather than merely gifting your children phones, laptops, and other technology devices, I suggest that you introduce your children to programs designed to teach basic skills in technology! There are many excellent options, such as Scratch, which is a free program developed by MIT to teach the fundamentals of programming and generate interest in software development. And when interest is piqued, there are further genre-specific teaching platforms, such as Gamestar Mechanic, which teaches the art of video game development. Help your children discover the art of creation!

It is also important that schools begin introducing computer science classes and programs at younger ages. The logical thinking of a good engineer and scientist can be incubated in youth through general science education, but to cultivate good computer scientists there needs to be exposure to programming and engineering at the ages in which wonder can translate to passion and skill. In between physics and chemistry, elementary and high schools should offer coursework to help students understand how computers work, what programming is, and the joy of keyboard creation. Host programming competitions and hack-a-thons to encourage student participation, and offer opportunities with nearby colleges for those who show talent. The best engineers I've ever worked with all have a common story: they discovered and indulged their love of technology at an early age, and received support and guidance from those around them.

The best skills are learned in youth!

Finally, political effort should be undertaken to stimulate interest in STEM programs. Massachusetts has been a model worth following, for example, having implemented the celebrated STEM Pipeline Fund in 2003 with a goal of increasing public school educators with STEM skills, expanding STEM coursework offerings, and increasing the number of residents pursuing STEM careers. And it has worked! Interest in STEM studies has steadily increased over the last decade, and the technology industry has flourished; furthermore, admissions and graduation rates in STEM programs has rapidly accelerating in Boston-area colleges and universities.

The economy has been generating approximately 120,000 new jobs that require STEM skills every year for a great long while, yet colleges are only producing approximately 40,000 new annual graduates from STEM programs. Such a significant supply and demand gap is a recipe that has created a great quality of living for those in possession of the proper credentials, with low unemployment and high compensation. Take charge of your personal success, and the success of your children, and pursue a technical education; you will be thankful that you did!

References

- https://www.stemconnector.org/sites/default/files/store/STEM-Students-STEM-Jobs-Executive-Summary.pdf
- http://www.mass.edu/forinstitutions/prek16/pipeline.asp
- http://www.mass.edu/forinstitutions/prek16/documents/Pipeline/Massachusetts_Stem_Dashboard_2013.pdf

July 01, 2014
989 views

Introducing: CentralAPI and CentralBuilder

I just recently released two new projects into the open source ecosystem, and I am now ready and willing to receive your criticism and/or hate mail! They are lovingly called CentralAPI and CentralBuilder, and they are designed to work together.

CentralAPI is a web-based service that allows you to easily collect, organize, and build security infrastructure around existing services without having to do any new development. Catalogue your current collection of services with a simple web form (assigning usage criteria, throttling, and other factors to it), and then use that service by calling it through the CentralAPI factory. Once the service is defined, you can export a WADL file that can be consumed by CentralBuilder to automatically generate usable PHP and Java code. The outputted libraries are easily integrated within existing systems without much extra development. You can also connect a CentralBuilder installation to CentralAPI and export service libraries from within the GUI.

Let me know your thoughts, and happy coding!

June 25, 2014
1168 views

The Ruling Technologists

Hiring for technology is difficult and costly, but well worth it.

This is a reality that needs to to be recognized by hiring managers throughout the world. Still today (albeit less frequently than in prior years) I stumble upon many job postings that are terribly undersold and poorly presented, and left to rot on the market for weeks, months, or even years. These companies are usually seeking too much talent for too little compensation with too onerous an interview process, and high-quality engineers are not in a position to need to put up with such demands. When these roles are finally fulfilled, they will be occupied by subpar talent, dragging down company productivity and output quality to save just a little in staffing expenses. It's a shame.

Technology professionals have been in high demand for many years, and there is no reason to assume that the supply will be able to meet that demand in the near future. There has been a science crisis brewing in the United States for some time, in fact, with the number of high school graduates prepared for collegiate level STEM courses dropping each year (and a still shocking number of students withdrawing from collegiate STEM programs before completion). Fortunately, the enrollment rate for computer science programs has been cautiously rising since 2007, with a 29.2% increase in 2013 (and a 19.8% increase in graduations), but that still only accounts for 13,055 new undergraduate degrees in computer science. By contrast, there is now an estimated 150,000 new technology job openings created every year in the United States, and the labor department estimates that 1 in every 2 STEM jobs will soon be in the computing fields. In fact, between 2010 and 2013 over 275,000 new jobs were created in the computing fields, and over 2.5 million computing jobs currently exist. Technology careers are now one of the highest paying fields in the country, with a 2011 average annual salary of $78,730. In many regions of the country this shortage has created remarkable job security; in the Boston Metro area, for example, the 2013 unemployment rate for technology professionals was just 3.5% (compared to the state average of 7.6%), and that does not account for voluntary removal from the workforce. The average salary for a mid-level software engineer in Boston in 2013 was hovering around $77,000 with an upper-limit of $154,000!

In short, technologists are rare, highly in demand, and fully able to control their own destiny.

I am sure many of you remember the insanity of the late 1990's when it seemed that anyone with a computer and working fingers could secure six-figure salaries; those days are thankfully gone. But it is dangerous to mistake that reduction as anything other than a return to reality. The computer industry has matured and slowly migrated away from the valuation monstrosities of the great tech bubble, but there is still significant value and ability to leverage in a talented technologist. If you want to secure top-quality employees, you are going to have to pay for them. And if you simply cannot afford the best, then you will have to settle for the young; work with universities to secure internships and cooperative employees, and expect significant turnover.

Hiring is almost always problematic and challenging, and expensive, but it is also important to remember: it's worth it. A top-quality technologist can completely change the landscape of your business model and do wonders for company productivity; the best engineers will even raise the quality of the entire product suite through leadership. Hiring is an investment in the company, the most important investment, and should be treated with care and respect.

References

- http://cra.org/govaffairs/blog/wp-content/uploads/2013/03/CRA_Taulbee_CS_Degrees_and_Enrollment_2011-12.pdf
- http://f9c2f2a9517a073e3a66-4905f4819032f494f944d6d0a32dcd10.r60.cf1.rackcdn.com/CinC_2012_New_Data_PP_FINAL.pdf
- http://www.forbes.com/sites/emsi/2013/12/19/the-t-in-stem-getting-more-u-s-students-to-gravitate-to-computer-science-programs/
- http://www.bizjournals.com/boston/blog/techflash/2013/07/tech-unemployment-rate-sees-slight.html
- http://www.glassdoor.com/Salaries/boston-salary-SRCH_IL.0,6_IM109.htm

« Previous
Next »