Following unionization, Glitch signs collective bargaining agreement

In another key moment for the growing tech labor movement, Glitch employees today announced that they have signed a collective bargaining agreement with the company. The move comes a year after the site’s workforce voted to join the Communications Workers of America Local 1101.

“We’re excited that Glitch workers have signed their first-ever contract, a milestone in this industry,” CWA Local 1101 President Keith Purce said in a release tied to the announcement. “CWA has decades of experience helping workers improve conditions at some of this country’s largest, most powerful corporations. We know we’re stronger when we fight together, and we hope this victory inspires other software engineers to organize their workplaces.”

Glitch says the agreement has been in the works for around five months before being, “ratified overwhelmingly” by employees. The union calls the move, “the first collective bargaining agreement signed by software engineers in the tech industry,” citing industry moves designed from preventing labor movements from solidifying in tech.

In spite of this, however, the movement has been growing, particularly over the past year, among blue-collar and white-collar workers alike. Recent examples include Kickstarter and the Alphabet Workers Union.

Attempts to unionize among Amazon warehouse employees have been decidedly more rocky, as the company has purchased advertising and sent mailers attempting to dissuade workers. Still, the pro-union wing has seemingly found an ally in Joe Biden, who recently commented, “The choice to join a union is up to the workers, full stop.”

In May, Glitch laid off 18 — amounting to around a third of the staff. CEO Anil Dash noted at the time, “we are a small company in a fiercely competitive space in a tough economy. But these good people have done immensely valuable work that our entire team and community are grateful for.”

The agreement, which holds for 11 months, focuses — in part — on the rights of those impacted workers, detailing severance and rehiring those former employees if their former positions are re-instated.

“This is an absolutely historic win for us,” said software engineer Katie Lundsgaard. “We love our jobs, we love working at Glitch, which is why we wanted to ensure we have a lasting voice at this company and lasting protections. This contract does that, and I hope tech workers across the industry can see that unions and startups are not incompatible.”

Organizers add:

The contract also does not focus on wages and benefits, which are already generous at Glitch, opting instead to ensure basic union protections for workers and a continued voice in the workplace.


Early Stage is the premier ‘how-to’ event for startup entrepreneurs and investors. You’ll hear first-hand how some of the most successful founders and VCs build their businesses, raise money and manage their portfolios. We’ll cover every aspect of company building: Fundraising, recruiting, sales, product market fit, PR, marketing and brand building. Each session also has audience participation built-in – there’s ample time included for audience questions and discussion.

( function() {
var func = function() {
var iframe = document.getElementById(‘wpcom-iframe-dde292b93a5f3017145419dd51bb9fce’)
if ( iframe ) {
iframe.onload = function() {
iframe.contentWindow.postMessage( {
‘msg_type’: ‘poll_size’,
‘frame_id’: ‘wpcom-iframe-dde292b93a5f3017145419dd51bb9fce’
}, “https://tcprotectedembed.com” );
}
}

// Autosize iframe
var funcSizeResponse = function( e ) {

var origin = document.createElement( ‘a’ );
origin.href = e.origin;

// Verify message origin
if ( ‘tcprotectedembed.com’ !== origin.host )
return;

// Verify message is in a format we expect
if ( ‘object’ !== typeof e.data || undefined === e.data.msg_type )
return;

switch ( e.data.msg_type ) {
case ‘poll_size:response’:
var iframe = document.getElementById( e.data._request.frame_id );

if ( iframe && ” === iframe.width )
iframe.width = ‘100%’;
if ( iframe && ” === iframe.height )
iframe.height = parseInt( e.data.height );

return;
default:
return;
}
}

if ( ‘function’ === typeof window.addEventListener ) {
window.addEventListener( ‘message’, funcSizeResponse, false );
} else if ( ‘function’ === typeof window.attachEvent ) {
window.attachEvent( ‘onmessage’, funcSizeResponse );
}
}
if (document.readyState === ‘complete’) { func.apply(); /* compat for infinite scroll */ }
else if ( document.addEventListener ) { document.addEventListener( ‘DOMContentLoaded’, func, false ); }
else if ( document.attachEvent ) { document.attachEvent( ‘onreadystatechange’, func ); }
} )();

Responses are currently closed, but you can trackback from your own site.

Comments are closed.