Skip to content

Latest commit

 

History

History
427 lines (338 loc) · 22.9 KB

white-paper.md

File metadata and controls

427 lines (338 loc) · 22.9 KB

WHITEPAPER 2019

1. Introduction

The technology workforce in Alaska is stagnant and has stunted the businesses in the technology sector in Alaska. Programmers often leave the state citing "no jobs" while potential employers overlook Alaska due to "lack of talent." Previous attempts to build and promote a programming community have been implemented in a very focused or niche manner such as "web developers meetup" or "game developers" meetup. Due to Alaska's large land mass and low population density, none of these groups have been sustainable. The Alaska Developer's Alliance is bridging this gap to create the critical mass of programmers needed to promote and grow a community capable of supporting knowledge-based and technology businesses. Throughout the course of this paper, the Alaska Developer's Alliance will be referred to as ADA or Alliance for short. Developers will be referred to as software engineers, engineers, and programmers.

1.1. Problem statement

Alaska does not currently have the required workforce to fill the existing gaps in the workforce, support local technology development, or scale a high growth technology startup.

  • Newer engineers have very few career prospects.
  • Seasoned engineers either leave Alaska or work remotely because there are few jobs commensurate with experience or industry wages.
  • Engineers working remotely from Alaska offer valuable skill sets and experience that are in-demand, but haven’t found a way to participate in the community.
  • Major corporations in Telco and Oil & Gas are outsourcing jobs to the lower 48 because they can’t find the workforce locally.
  • State and local government cannot fill senior developers positions Without a cohesive programming community, the technology workforce in Alaska will continue to struggle. In order to help drive engineering in Alaska we are building a community that serves as a hub for programmers, engages with students of all levels, and provides ongoing training and professional development.

1.2. Abstract

The Developer Community in Alaska is woefully lacking. There is a self fulfilling prophecy of developers not believing there is a community and then not participating that extends into the job and employment markets. Employers don’t believe there is a workforce and developers don’t believe there are job opportunities. Educational institutions are not engaging with the developer community or employers regularly enough. The Alaska Developers Alliance is the solution to this problem. By focusing on building a community the Developers Alliance will first lift the morale of developers to create momentum and a shift in the understanding of the developer community in Alaska.

1.3. Target Audience

This white paper is written for employers, community builders, educators, policy makers, and community members looking for a deep understanding of the technology community in alaska. It is part 1 of 3 of the founding documents for the Alaska Developers Alliance.

1.4. Outline

  1. Brief summary of the programming community in Alaska
  2. Career paths for programmers
  3. Understanding Alaska's programmer career trajectory
  4. Education
  5. A look at survey results of developers in the community
  6. Solutions the Alaska Developer’s Alliance Provides

2. 1. Brief summary of programming community in Alaska

Before the Alaska Developers Alliance was founded, 6 months of research was conducted in order to find out why a programmer community did not exist in 2018. This research included talking to over 50 community members, sending out surveys to over 100 developers, engaging with UAA, UAF, previous and current meetup organizers, and an organization looking to start a code school in Alaska. There were several glaring takeaways from this research that serve as the foundation of this white paper.

  • A. Founder burnout: Developer organizations run by a single person lead to burnout of meetup organizers in an average of 15 months from the time the group was formed. When organizers were asked why they started a group the common answer was that "it didn't exist so I created one”. When asked why the group disbanded, 100% of organizers referenced a life or work event that would not afford them the time to continue with the group. Within 7 years, there have been 3-4 programmer meetup groups that have been formed and disbanded.
  • B. Lack of awareness: When programmers were asked why they didn't participate in the community, the most common answer was that they were unaware that a programming community existed or that there were enough programmers in the state.
  • C. Too niche: Specificity of groups lead to less overall participation thus groups never hit a critical mass of participation to keep groups moving forward. For example, a web developer may not attend a game developer meetup.
  • D. Lack of engagement with students: Very little or no engagement with the University of Alaska to develop a pipeline of members.
  • E. Lack of engagement with major employers: Very little or no engagement with State of Alaska, federal organizations, or private industry employers.
  • F. Lack of incentive for attendance: 9/10 programmer meetups in Seattle provided specific learning topics as opposed to social meetups for networking. Over 70% of those meetups provided food and other forms of participation benefits. Benefits were provided by potential employers, technology shareholders, and educational institutions

3. 2. Career paths for programmers

In order to understand the landscape of the developer workforce, we need to agree on some definitions of experience. Initially a scale of 0-4 was used, however, a top level recruiter from Seattle provided industry terms on par with Google, Amazon, and Microsoft. The ADA is formally adopting these as our programmer experience levels.

For context a company like Snapchat which is 3000 employees has about 1300 engineers. Snapchat would have 50% of their engineering staff be level 3's and 4's. This population is important because they grow with the company into 5+. While 5+ are important, only about 10% of the company is built on 6's and 7's. Attracting 6's and 7's requires not just a commensurate salary and equity, but also the right problem that entices them to the job, thus these are the most challenging employees to acquire.

At Level 4, there is a career fork where a programmer decides to go management or technical. The technology industry is currently figuring out how best to manage these transitions as younger employees with technical acumen will generally earn higher salaries than older employees, but at a certain undefined age, employees go the management route in order to break the ceiling of their current salary. As companies are losing technical talent to the management track, there has been a movement toward rewarding individual contributors who choose to continue down the technical career path.

4. 3. Understanding Alaska's Programmer Career

4.1. Trajectory

There are plenty of programmers at the level 0 phase where they begin to experiment and play with programming on their own, however, when looking into higher education, programmers looking at local job prospects after college become discouraged. The average programmer salary in Alaska is somewhere between $75,000 and $90,000 including the MOST senior programmers according to Glassdoor.com, CareerExplorer.com, and PayScale.com.

According to Coursereport.com the average programmer salary in California or New York after a bootcamp is $71,000 as of 2017. After conferring with recruiters, Seattle is now $75,000-$85,000. In Seattle, Level 1 programmers from formal education such as Computer Science(CS) are earning $90,000+ in their first year.

Anchorage's Cost of living index is 1.28, while Seattle's is 1.49 (PayScale.com). Using PayScale.com's average programmer salary for Alaska ($75,000) and Seattle($98,092), and adjusting for cost of living, a programmer would still make about 1-2% more living in Seattle. However, this does not account for the increased top-end income. Top-end income for a level 5 programmer in Seattle can be $300,000+ in Seattle vs $150,000 in Alaska or about a 200% increase. Base rate for a level 4 developer at Snapchat is $190,000 + bonus and stock options.

4.2. Programmers have a disincentive to stay in Alaska

If you live in Alaska, how satisfied are you with job opportunities for software developers living in Alaska?

1 is very dissatisfied, 5 is very satisfied.

In a survey of 48 programmers living in Alaska, 74% stated that they're unhappy with the programming position they currently hold. We are seeing many programmers leave the state for higher education and better job opportunities because of difficulty getting jobs, getting a fulfilling job, or getting a job that allows for continued career development relevant outside Alaska.

According to the Anchorage School District(ASD), the two CS programs offered at Dimond and Service are full while at the same time the Computer Science and Engineering(CS&E) Advisory Board has in recent years seen an uptick in enrollment followed by a leveling out in 2019.

UAA and ASD are currently working to develop a track by which high school CS students can transfer their credits to UAA and continue into the CS program. Currently the largest hurdle is that students taking CS courses are not always aware of the math requirements of a CS degree, thus when entering college they are behind in the math requirements. This has lead to CS "bleeding" programmers into other programming related degrees with lower math requirements such as Management Information Systems (MIS).

While UAA offers high quality and comprehensive CS and MIS degrees, the university suffers from a longstanding reputation of not being a high level school. Much of this reputation came from the absorption of Alaska Community College into UAA and was further reiterated with the teaching department losing its accreditation in 2018. Students look to other universities and will even specifically go to UAF to avoid UAA.

While some of this is a matter of geography, this reputation is a catalyst for students seeking education elsewhere. This all contributes to the bright students leaving Alaska for education, also known as the "brain drain". Interestingly though, UAA, has had an upswing in CS enrollment over the last 4 years.

5. 4. Education

While we've got a pipeline of incoming students, we do not have pipeline of PRODUCTIVE programmers entering the workforce. The long standing mantra in the programming field, "the hardest job to get is your first one," has long held true in Alaska. The graph below depicts 3 different education tracts with their capabilities vs productivity assuming no continuing formal education.

** include Electrical engineers, Math/Stats, Minor in CS. change bootcamp to code school

Programmers who have completed formal education arrive at level 1 with different levels of productivity vs. capacity. Specialized programs like code schools offer education in programming languages like Python with the Django framework and are focused on making them productive within a timeline of 6-9 months. This however has the downside of glossing over the greater CS fundamentals - data structures, algorithms, etc that increases a programmers total capability. Management Information Systems(MIS) has an emphasis on business analysis, communication, and web development, thus having lower productivity than a bootcamp, but higher capacity, and tends to produce management track developers. Computer science focuses mostly on fundamentals and theory at the expense of teaching software engineering, thus graduates have the highest capacity of either MIS or Codeschool graduates but with a longer on-ramp to productivity. A Key finding from coursereport.com showed that the highest salaries from boot camp participants were those who had studied engineering and mathematics previously.

Alaskan companies want level 3-4 programmers but are not willing or don’t have the capacity to hire and train level 1-2. While getting a first programming job is the most difficult, Alaskan companies cannot find level 3-4 developers to fill positions. Making matters worse, state and federal contracts are increasingly stipulating mid and senior level developers meaning developer shops have few opportunities to mentor level 1-2’s. No large corporations interviewed had internal training structures to get developers from level 1-2 to 3-4.

According to a Seattle based recruiter, high growth startups under 200 employees would be looking almost exclusively level 3+ engineers as they would not have the manpower to mentor lower level developers into their roles. This underscores a fundamental problem in Alaska. The only continuing education for programmers in Alaska is a graduate level degree in Computer Science from the University of Alaska Fairbanks. For most, getting a non-specialized 2 year degree in computer science is too large a time and financial investment while getting established and does not necessarily fill the gap in the workforce.

5.1. UA System Graduate Statistics

School 2017 2018 2019
UAA BS CS 19 22 25
UAA BBA MIS 7 17 16
UAF BS CS 12 7 16
UAF MS CS 5 1 3

Beyond UA programs, there are no codeschools, bootcamps, or continuing education opportunities.​ The biggest threat to Alaska's programming community is a lack of structure to get programmers from level 2 to level 4.

6. 5. Building a better programming community -

6.1. Results from a survey of local programmers

Leading up to the creation of the Developers Alliance, 100 programmers from Alaska were surveyed (2018) in order to get a feel for what the community looked like. Most questions received around 70 responses, while some were conducted as a separate survey and will have closer to 50.

6.1.1. Are you currently employed as a programmer?

Starting with basic statistics on employment, it was quite surprising to see that less than half of those surveyed responded that they were employed as programmers. Many of these programmers report that they're under employed or have a hard time getting consistent work. This is consistent with the mantra "The hardest job to get as a programmer is your first one."

6.1.2. How long did it take you to find your first developer job in Alaska?

Many state and corporate organizations require a bachelor degree and 2-4 years experience. According to three contract firms, there is a shift to contracts stipulating only mid and senior developers. This is effectively cutting off the pipeline of workforce development in Alaska. Furthermore, it creates an incentive for high potential junior programmers to leave the state - even before attending an Alaskan University.

6.1.3. Do you work for an Alaska company(s) or work remotely?

6.1.4. If you live in Alaska, how satisfied are you with job opportunities for software developers living in Alaska?

1 is very dissatisfied, 5 is happy. With 74% of developers surveyed working for Alaskan Companies and 43% of 75% of developers saying they're unhappy with Alaskan job opportunities, we're clearly seeing a trend of dissatisfied programmers working in Alaska.

6.1.5. What do you believe is the most important element missing in the Alaskan Developer Community?

The top 4 answers were:

  1. Community
  2. Good jobs + benefits
  3. Learning opportunities and career growth / mentorships
  4. Lack of interesting projects

6.1.6. Where do you hang out with programmers outside of work?

The top 2 answers were:

  1. What other programmers?
  2. Meetups

6.1.7. What could make the tech community better in Alaska?

Top 2 answers

  1. Better Job opportunities and more software employers
  2. Making the community more visible and active ( meetups / peer talks )

6.1.8. Can we email you?

Over 94% of those that took the survey said they would like to be contacted regarding future events and updates on the Developers Alliance. This shows an underlying need for an organization that brings together developers for the purpose of professional development, community, and job opportunities.

6.1.9. Key Community Takeaways

  1. Programmers are hungry for learning opportunities.
  2. Programmers don't believe there is a community, so they do not look for ways to participate.
  3. There is a lack of incentive for programmers to participate in the community.
  4. Programmers don’t see a connection between the community and potential employers.
  5. There is no engagement with educational institutions thus programmers entering the workforce have no professional development community to participate with.
  6. Alaska has few programmers because there are few jobs, and fewer jobs because there are few programmers.

7. 6. Solution

The Alaska Developers Alliance is a developer first organization with the purpose of building a strong community that keeps developers engaged and retained in the state. It is discipline agnostic and aimed at programmers of all ability levels. It currently has 3 chapters in Anchorage, Juneau, and Fairbanks, with intention to expand to further geographic regions. The Developers Alliance will be the flywheel of technology in the Alaskan programmer ecosystem.

7.1. The Flywheel of Community

The Dev Alliance acts as a flywheel for the technology workforce by:

  1. Engaging with learners at the earliest possible time
  2. Fostering knowledge sharing and career possibilities with Level 0’s and 1’s
  3. Working with accelerators and employers to understand the technology needs for programmers and bridging the gap to education
  4. Providing continuing education via talks, bootcamps, and scholarships to outside conferences
  5. Bridging the gap from level 0 all the way through a company’s level 7 hire

8. Conclusion

The Alaska Developers Alliance is building a workforce for the future. By focusing on developers first, it will create the momentum needed for a thriving, active, community that developers will aspire to be a part of and enable the next generation of innovation in Alaska. See the action plan for how we’re moving into the future.

8.1. Endorsed by the founding board of the Alaska Dev Alliance

  • Jeff Levin
  • Vincent Castro
  • Arsh Chauhan
  • Isaac Vanderburg
  • Conroy Whitney
  • Adam Link
  • Jeremy Mayfield
  • Lincoln Larson
  • Matt Perry
  • Kelly Larson
  • Erik Talvi

8.1.1. Citations