Events

Career/ Leadership

The Interview: What History and Science Can Teach Us About Hiring


We all believe in the importance of having the best talent. We invest significant amounts of time in designing each phase of our interview process—from the number of stages to developing technical assessments and tweaking interview questions. We follow that with countless more hours filtering resumes, conducting phone screens, and interviewing candidates. All of this in the pursuit of finding that special someone to join our team. But how did we come to put these practices into place? And, how effective are we at assessing talent and potential, really? In this talk, we’ll learn about the history of the job interview, what science can tell us about our models of performance, how humans, as a species, are terrible at assessing potential, and what we can do about it.

Speakers

It's not your job to love your job.


Tech workers are under enormous pressure to put our jobs above anything else in our lives. Startup culture encourages self sacrifice and overwork in order to complete the company’s mission. It’s easy to feel that we should be grateful to have a job in this industry, especially when you have a decent salary and perks, and your boss is constantly reminding you that you’re part of a “family” that is “changing the world.” Loving or appreciating your job isn’t a problem on it’s own. But you’re not obligated to do it. In fact, I’d argue that the pressure to love your job can be dangerous. Using examples from my personal experience and from the tech industry as a whole, I’ll talk about how unconditional job love is used to exploit or mistreat tech workers. You’ll leave this talk with a better understanding of techniques employers use to mask workplace issues, how to view your workplace more critically, how to spot cultural red flags, and how to advocate for yourself and your colleagues.

Speakers

Demystifying Human Resources


"Don’t trust HR," is something you hear a lot, and with good reason: fundamentally, the role of Human Resources is to protect a company's interests. (I should know: I used to work in HR before I became an engineer!) However, there are situations where the company’s interests and your interests are aligned, where involving HR might be a good idea. How can under-represented technical workers leverage Human Resources to help our teams and ourselves? In this talk, I'll explain the different types of HR folks you're likely to encounter in the wild. I'll share some principles you can apply to understand whether or not HR can actually help you, including real world stories from both sides of the table. Finally, you'll learn about rights you have as a worker and what you can do to protect yourself.

Speakers

Things You Don't Know You Don't Know: Filling in the gaps after a coding bootcamp


You did it! You completed a coding bootcamp, and you're ready to take on the world. Just one problem: the bootcamps aren't long enough to teach you everything you need to know! Networking protocols, container technologies now used universally, and a host of things in between; let's try to fill in the gaps, and get you working.

Speakers

Hacking your career growth with Open Source


Getting started as a software developer is often difficult. Even junior or entry level positions require some years of real world experience to be considered. In this talk, we'll look at how we can hack that system and use the power of open source to gain real world experience. We'll look at what contributing to open source can teach someone, as well as hear from real developers who have professionally benefited from open source.

Speakers

How I learned to stop worrying and grow high performance teams


In my career, I’ve learned that effective leadership requires authenticity - in the leader, the leadership style, and the team. In order to lead with authenticity, you need to know yourself, your team, and put in the work to build trust. In this talk, I’ll explain what Authentic Leadership means, strategies to put it into practice, and why this style helps build high performing teams.

Speakers

Gatekeepers and Difficulty Anchors


If I just do great work, people will notice, right? Well, maybe not. This talk covers important survival tips for managing your career in tech.

Speakers

Please Welcome [Your Name] to the Stage!


How does the idea of public speaking at a tech conference make you feel? Does the notion of being onstage make your heart race or your hands sweat? Do you think you're too shy, too introverted, too [your choice of adjective] to be a successful public speaker? Do you think you have nothing valuable to share that everyone else doesn't already know? Let's really dig into conference speaking. What are the reasons people want to start speaking and what are the benefits? Why is it sometimes challenging to get started? Let's dispel myths about tech conference speaking and also go over how you—yes, YOU—can do it!

Speakers

Your Manager is Lonely (& Other Secrets)


As the tech industry recovers from the popular “flat” organizations of a few years ago, more companies are recognizing engineering management as a separate career track from the individual contributor path. With this distinction, our industry is putting more attention on defining good engineering management practices and philosophies. New managers are more informed about what an engineering manager does, but they are often unprepared for what an engineering manager experiences and feels. This talk will be about the manager–perhaps your manager–and some of the unexpected feelings, difficulties, and struggles common to the role. If you are considering transitioning to management, are a new manager, or are wanting to understand and support your current manager a little better, this talk is for you.

Speakers

How to Check Your Stress While Working in Tech


Deadlines are due, teammates will struggle, and your org won't care. The reality is, working in tech is stressful! Yet, what are you doing to make sure you maintain your sanity while trying to keep up with the overhead that comes with working in tech? In this talk, I will discuss the many mental stressors that come with being an engineer and the importance of staying aware of these anxiety-inducing events. As well as, share my own personal struggles with mental health during my tenure in tech.

Speakers

The Junior Developer's Survival Guide: Cultivating a better engineering mindset


As you're traversing your way through interviews and building your career, you will inevitably worry about how we can prepare for the technical issues we will face both in interviews and on the job. It is especially the case for those of us who are self taught or in bootcamps. What makes a good engineer isnt necessarily dependent on what technologies they know but more on how they think, what they value and how they approach problems, which is exactly why companies assess those qualities. In this session, I'll go over my nontraditional path into tech, what my first year in tech taught me as far as what to prioritize, why things such as test driven development advocacy and algorithmic thinking are important, and ways you can start cultivating a better engineering mindset so you can be set up for success!

Speakers

Cool $h!t

The Bars API: Wisdom Sent From Above


An overview of using a couple of different technologies to build a CLI tool that gives users a rap quote every time they start the terminal up. The talk would be in the story format about what inspired me to build the tool and then gradually get more technical as I talk about how I designed a system of cloud services to automate the lyrics gathering process and stand up an API that could feed other developer's applications. The topics touched on: ethical webscraping, API development, serverless computing on AWS, cloud storage, open source contributions, blogging (briefly). Technologies used/touched on: - Webscraping (python, beautiful soup) - AWS Serverless Compute (Lambda) - AWS API Gateway - AWS S3 - NodeJS (briefly for the CLI tool) Depending on timing, might also go over implementing a client interface of the API into the super-hackable open-source blogging platform called Ghost.

Speakers

I want to take my nodes into a one OAuth town...


...and write like I can't no more. All nodes work together to ensure they are all coming to the same result of information. Nodes on distributed ledger technology act as devices on the network. While there are several different ways to invoke and set up OAuth permissions, it is important in understanding the service provided as a mechanism that enables you to use a secured token to access your blockchain network. During this session, we will learn and analyze the methods that are used to build and structure OAuth credentials as way to enable privacy on the nodes you use when communicating data.

Speakers

Adventures in TensorFlow.js


In the next 10 years, the most monumental advancements will be in AI. Developers and Data Science will merge in a new and fantastic world of opportunities. I'm happy to show you the way, and why you should walk the path.

Speakers

No Panic!: Vue, Google Maps, Firebase , Auth0 and deployment in one place!


This is just an awesome example of how knowing a little bit about each sector of the tech ecosystem can be beneficial. Putting together a Vue.js PWA and integrating Google Maps, Firebase, Auth0 and deployment in very simple steps. Fostering collaboration and DevOps culture with a great example!

Speakers

Telling Your Developer Story with Live Streams


There is no better time to be a developer than now. While resumes are not yet a thing of the past, platforms like Github, Medium, StackOverflow, and Twitter make it so much more effective to showcase your skills as a developer. What if there was a more effective way to do this with video? In this talk we're going to talk about how to craft and share your developer story on different platforms using video as your medium of choice. We will explore why video is the best medium to tell your developer story in 2020. We will showcase how to effectively use popular video platforms like YouTube, Twitch, Facebook, and Instagram to level up your skills while building authentic connections with other developers. Finally we will talk about how to share your video content in ways that help you succeed at uniquely telling your story. By the end of this session, you will feel inspired to share your story with others in front of the camera and prepared to showcase your developer skills along the way. 

Speakers

Getting Started with Speech Recognition and Speech Synthesis


With the rise of voice-assisted devices, this is the perfect time to leverage voice in your applications. In this talk, we will start with an overview of the current voice technologies on the marker and then, we will dig into over how speech recognition and speech synthesis power voice-enabled devices. Finally, we will go over an example of how to get started with speech recognition and speech synthesis in your web applications.

Speakers

An intro to Machine Learning (in JS!)


Join Cecili as she talks about her passion project to create an application to suggest if items can be composted, recycled, or reused. In this talk, attendees will learn high level concepts of machine learning looking at this project’s use of Google’s Tensorflow for JavaScript. By the end of this talk, attendees will understand how to identify images of food items and display whether or not an item is compostable. No previous understanding of machine learning necessary!

Speakers

DIY Astrology


Have you ever wanted to learn more about cognitive services, but don’t know where to start? Then this is the talk for you! I’ll walk you through how to make your own “astrology” using images of cosplay characters, and share my story of how I created my own horoscopes with Mario Kart players- watch out for any stray banana peels!

Speakers

Big Data Processing, visualization and ML with Apache Spark and Zeppelin


Apache Zeppelin is an open-source project that uses the concept of interactive notebooks to do several things: Data Ingestion, Data Discovery, Data Analytics, Data Visualization & Collaboration It supports multiple “backends” for working with your data, including: Apache Spark, JDBC, and much more. With its Spark built-in interpreter, you can load JARs at runtime (either local or from a Maven repo) and code in Scala, Groovy, or Kotlin directly in the notebook. In this session, we’ll explore an example that loads in a data set and shows some visualizations. We’ll write some Scala code to massage and filter data, then show the results in our notebook. We’ll also apply machine learning to our data set and do some analysis and show some nice graphs to examine our data.

Speakers

Sensors, Education and Code… Oh my!


There is a huge disconnect between what’s being exposed to students in the k-12 ecosystem when compared to what’s required to perform in industry.  To make matters worse, the digital divide is growing, and underrepresented communities are choosing STEM related careers at disproportionate levels.   During this talk, we will discuss how MantisEdu has built a platform that exposes students to best in breed technology, while helping them prepare for tomorrow’s careers.    Solutions have been developed to integrate technology enhanced experiences into student focused activities, using toolsets that are age and skill level appropriate.  Each example is hands on, and include sensors, software and a software development platform.   We will share examples of how our platform is being used to enable use cases covering topics such Intelligent Farming (i.e. aquaponics/hydroponics), Data modeling and Classification, cloud computing and mobile application development. We’ll close out demonstrating how we have packaged our solution to provide a direct to consumer offering that allow for scale.

Speakers

Combatting Bias in Machine Learning


Combatting Bias in Machine Learning will cover how to see the bias in your data and machine learning models. By giving examples from recent research on biased facial recognition systems as well as cutting edge explainability algorithms, attendees can expect clarification on what bias means in ML. This talk will encourage attendees to be open to expressing assumptions of their models and understanding the unintended consequences of biased data.

Speakers

Microcontrollers (MCUs), Cloud, and a Chance of AI


One of the fastest growing tech skills of the past five years, according to Indeed, is IoT skills. The need for IoT development has grown 1994% (yes that's right 1994%). Some of the most powerful IoT solutions are using MCUs (microcontrollers) at the heart their applications. Think this embedded development is tough ...Nah! Join me to discuss, learn, and build an IoT solutions using popular MCUs and embedded development tying these devices to Cloud. For fun, we'll also briefly touch upon a new technology, Tensorflow Lite for Microcontrollers which puts AI in the tiniest of IoT devices hands.

Speakers

Frontend Engineering

Framework Agnostic Design Systems with StencilJS


Design Systems have taken the engineering world by storm - and for good reason. Having a consistent, seamless user experience across products is a clear win for users. Providing a complete library of components for developers removes some of the complexity around designing the user interface and interactions for applications. However, teams use different frameworks to build web apps, meaning a design system needs to be flexible enough to support existing applications. At BlackRock, we're using StencilJS to build a framework agnostic component library for our Angular and React applications. This talk is a case study on how we went from idea to implementation of a design system for an enterprise using a variety of frameworks. We’ll start by breaking down how we evaluated different component libraries (lit-element, SkateJS, StencilJS) before making a decision. Then we’ll discuss how we leveraged Stencil to write our components 1 time, but generate 3 component libraries (web component, Angular, React) for developers. Finally, we’ll explore the road to rollout the design system across our web applications – along with some of the bumps along the way. The reality of working in the enterprise is that technologies can (and do) differ across applications. Building this design system while managing constraints from stakeholders meant we needed to work with intention from library choice, to implementing the library, to rollout. The end result has been a library we’ve found to be flexible, and a bright future for user experience at BlackRock.

Speakers

Have you met TypeScript?


JavaScript is cool. Have you met its cooler cousin TypeScript? If you have been holding out thus far, now is the time for it. TypeScript has seen a steady rise in adoption over the last couple years and moved up significantly in the programming language rankings. This talk will introduce you to TypeScript and its "super powers" such as type safety, interfaces, generics and more with code examples and provide resources so you can get to know it better.

Speakers

React in Pieces: Component-Driven Development For The Real World


As applications get more and more complex, they become intertwined, and components are no longer reusable. By building from the "bottom-up," there is a unique set of advantages to new or existing projects. To create an app that is maintainable, expandable, and easier to read/debug, especially when working with other developers.

Speakers

Power Up Gatsby with Authentication


Gatsby is an amazing platform for building static sites, but it can also pull in dynamic data from outside APIs! Wouldn’t it be awesome if we could also have a user profile with access to protected data? Like Mario’s fire flower or Link’s hook shot, adding authentication will power up your dynamic Gatsby site. In this talk, you’ll learn how to set up logging in and out of a Gatsby site, access protected data, and handle silent authentication when the page reloads. You’ll also learn some tips and tricks to avoid common pitfalls with authentication in Gatsby. By the end, you’ll be ready for the next level of your Gatsby quest!

Speakers

React Context Is Your New Friend


React Context API was introduced sometime in 2018 but people getting into React still find it hard to understand or don't really understand it's purpose. We are going to talk over what it's used for, the problem it solves and what it should not be used for. We will look at some examples and what you need in order to set it up. We'll also go over the hook `useContext`.

Speakers

ARIA: A Grande Method Of Accessible Markup


ARIA, or accessible rich internet applications, are a very powerful set of attributes that define non-semantic content for your users with disabilities. In this session, we are going to break down web accessibility at its most granular level before exploring ARIA properties that will help create amazing user experiences, when semantic markup won't cut it. By the end of this talk, you will walk away with the knowledge of introductory ARIA concepts and when to put them into practice.

Speakers

Reactive Angular


When I was first learning Observables (RxJS) I had no idea that I was learning the most efficient way to build modern reactive code, ever! In this talk we will cover what Reactive Programming means, and how using Observables can make our apps faster. Faster to build, and faster at runtime. Many who have learned RxJS speak of a moment with something just clicked and it all made sense. Come enjoy this part of the show, where you too can have your AHA moment.

Speakers

Transitioning From JQuery To React: Working With Legacy Applications


React is a powerful framework that allows us to create powerful interactive user experiences. When working within a legacy application with a front end built in jQuery, transitioning to using React is not always straight forward. In this talk I will discuss on some methods that can be used to help make the transition into React, while still building new features.

Speakers

JAMstack FTW- Static Site Generation With Vue


In this session, I'll give an introduction to Gridsome, A static site generator with Vue. How we can leverage the JAMstack in building awesome websites with Gridsome also gives the audience a view on what they can achieve with Gridsome. So that by the end of this talk, Attendees will understand how to build a website using Gridsome, and all the possibility they can leverage by using JAMstack to build blazing fast websites with better performance and great security.

Speakers

Jammin' on the JAMstack


The JAMstack is a modern architecture that helps you create secure, dynamic sites faster. It uses JavaScript, APIs and prerendered Markup, served without web servers. In this session we’ll cover the core concepts and benefits of the JAMstack, so you can confidently tell your co-workers, “I know _exactly_ what the JAMstack is!” Then we'll jump into coding a JAMstack site so you'll have the tools you'll need to build your own.

Speakers

Full-day Workshops

Skill Up on Visual Studio Code


Are you using VS Code but feel like you're missing out on features that can help? Then this is the workshop for you. Come learn about things that matter most to developers: shortcuts, customization, developing/debugging, source control, extensions and so much more. The tool has a lot to offer and by the end of this session you'll walk away feeling prepared to leverage its full potential.

Speakers

Hacking With Amazon Alexa


Voice represents the next major disruption in computing. Learn how to create compelling voice experiences and join the voice revolution! Whether you’re a developer, designer, or tech enthusiast, this workshop will teach you how to create your very own skill (app) for Amazon Alexa, the voice service that powers Amazon Echo. During the workshop, you'll receive in-depth training on how to build and publish skills that make Alexa smarter and make everyday tasks faster, easier, and more delightful. Workshop Outline: -How Alexa works -The anatomy of an Alexa skill -Best practices for voice design and voice user interfaces (VUI) -Intents, utterances, and slots to build a voice user interface (VUI) -Alexa Skills Kit (ASK) SDK for Python to handle requests sent to your skill -Auto delegation to have the skill automatically prompt for missing information -Alexa skill hosting to build and edit skill without leaving the developer console -Advanced concepts: persistence, monetization, visual elements, sounds, etc. -Build and publish skills to the Alexa Skills Store Pre-Workshop Requirements: You will need to create an Amazon Developer account (https://developer.amazon.com/en-US/alexa) .

Speakers

E2E testing with Cypress


We all want to consistently ship quality software. One of the best ways to do that is by end-to-end (E2E) testing our apps to simulate the real actions of our users. However, E2E testing in real browsers has notoriously been time-consuming, expensive, slow, and often flaky. Unfortunately, these issues lead to developers doing very little to no E2E testing and taking solace in a plethora of unit-tests that cannot fully test the intended experience of users. In this hands-on workshop, we’ll dive deep into using Cypress, a developer-friendly open-source tool that enables us to easily compose flake-free, reliable, deterministic E2E tests for our web applications. The session will be accompanied by exercises, demo app, and slides.

Speakers

Keynotes

What if the *real* 10× developer was the friends we made along the way?


Every so often the 10× developer trope makes the rounds. The debates get heated: what _is_ a 10× developer? are these traits we should treasure or avoid? do 10× developers even exist? In this talk, we’ll break down the very real risks of idolizing individual contributors, dig into the nugget of truth that keeps this stereotype alive, and dive into what a _real_ “10× developer” might look like. (Hint: it’s not about code; it’s about people.) You’ll walk away with a better understanding of individual and team psychology, efficiency and productivity at scale, creating safety and trust for teams, and elevating the entire organization rather than burning out top performers.

Speakers

Learning From Machines


Why can't you tickle yourself? How do you know where you are? Why do DeepDream images look so trippy? Why does trauma come in waves, washing over us again and again? Computational neuroscience provides insight into these questions and more. In visually lush presentation, I'll take us on a journey through biological and artificial minds, exploring how models of cognition informed by machine learning and computation can help us illuminate and reconfigure our own processes of being.

Speakers

Navigating Through Career Changes: How a liberal arts degree works in the technology industry


Changing careers, especially late in life, is challenging, potentially impossible. Anyone who claims to share 6-10 secret steps to success is trying to sell their book. Sandra Persing has risked several career changes from publishing to sales to start up life. Fast forward to present day, and she now heads Mozilla's Global Strategy for Developers, Events and Sponsorship. Join us for this Fireside chat session as Sandra shares her personal journey and some of her learnings along the way that helped her stay on her path to present. Warning: There are no magic tips nor tricks, and perhaps those career-forward on ramps once access then, no longer exists after this tale is told.

Speakers

Navigating team friction


Friction is a common, and necessary, part of team growth—but when left unchecked, team friction is unhealthy for you, your coworkers, your company, and ultimately your end users. In this presentation, I draw on my experiences at organizations large and small to illuminate the sources of team tension, how you can better understand and manage unexpected teammate reactions, and the best ways to give actionable feedback without escalating drama. Your coworkers, your organization, your users, and you will reap the benefits.

Speakers

Product & UX

Designing For The Ten Percent: How To Un-bias Your Designs


Have you ever thought about how shorter people have to bring their seats so close to the steering wheel (and subsequently, the airbag) when driving? Have you noticed some people choose their phone based on what can comfortably fit in their hand and not the features? What about people who don’t fit the “societal ideal body type” and the difficulty in finding clothes? Have you noticed that websites of major companies are being sued for things like the color of text? Our society, and the people in it, have biases. And because design is people-centric, it can also have biases. In this talk, we will be discussing what biases in design look like and what the consequences can be when someone doesn’t recognize that bias can greatly change your design process and outcome: From lack of usability to even potential harm. We will talk about how these “edge cases” or “10% restraints” mentioned above are more common than we even realize. We will also discuss what happens when designers remove those biases and what great good can be done when designing for the 10%.

Speakers

Turning Designs into Code


A lot of us know a good amount of HTML & CSS, but have never really been thrown a group of flat images and videos and told to "make this whole website". Breaking designs down and making a plan can be intimidating, especially if the first time you have to do it is at your first developer job! But is an important professional skill, so let's get some practice. In this presentation we'll talk about how to assess a design and use the patterns that you find in it to decide what your CSS needs are, then use the nature of the content to pick what the right accessible HTML elements, and finally bring those two needs together with clean, maintainable results. We'll also talk about what kinds of questions you can and should be asking when you receive a design, and while you work on it, to help you do a great job and know you are building the right thing.

Speakers

Designing Trust: Control, Context, Choice, and Respect


Trust is one of the greatest issues companies face, given the rise of data breaches. Recent regulations mean a death sentence to startups and a significant brand hit for larger organizations. Data privacy, by design, inhibits our ability to create new and unique value for our customers. In this talk, Noble walks us through designing for trust and its four tenets: control, context, choice, and respect. He shares insights on human-centered design-focused opportunities and obligations that can guide software architecture decisions for the independent developer or an established corporation. He presents practical examples to minimize the data you collect and best practices on asking for data in software only when it provides value for the user.

Speakers

Don't give me too many bricks to carry!


Quality assurance impacts the user experience: when things don’t work, users question their understanding and develop inefficient workarounds or just leave the product. Consider their thinking the same as carrying bricks, if you give them too many to carry, they will drop all. Ease of use is a measure of quality for design which involves looking through the eyes of a QA analyst. The quality issues that impact the whole UX is sometimes beyond the user interface. The relationship between QA and UX is a 2-way street and they both advocate for the user. This workshop explains the importance of that relationship and how they can collaborate to create a beautiful user experience. Attendees will also take part in interactive exercises to see how user experience is created. This talk can be attended by attendees with any level of knowledge.

Speakers

You Should Think Like a Product Manager, Even If You're Not One


What are the different ways that we, as Engineers, can become "leaders"? Sometimes it's the path of the fabled "architect," or the mighty "manager," but is that it? Of course not. We can become advocates of the very thing we build, as Product Managers. We don't need the title - just the mindset. Come to find out more!

Speakers

Social Impact

Leading Your D&I Initiatives with Genuine & Authentic Intent


Gen will be giving a talk about observations she's made on Diversity & Inclusion initiatives globally and how genuine and authentic people and organizations are with regards to D&I initiatives.

Speakers

Tech for Social Justice


Today, we live in a world where technology is being used to innovate for a very small section of the population, while the majority of people around the world are exploited and oppressed by tech. In this session, Idalin will present an analysis on how technology and the internet impacts society and explore ways we can use tech to advance the mission of social justice.

Speakers

Sex Tech: Helping and Harming Society's Most Vulnerable


Upon hearing the words "sex tech," many people make assumptions about what it is before understanding the facts and complexities. Sex tech has intersections in industries ranging from fintech (payment processors) to edtech (sex education). Innovations in this field continue to carve paths for marginalized communities that have long been purposely excluded from the narratives of history shaping human sexuality. However, there are also dark corners of sex tech that are intentionally attempting to silence the most vulnerable into nonexistence. Only with a universal, holistic understanding of this growing field can we expose these harmful impacts for a more safe and inclusive tech industry.

Speakers

Designing an org for all of us


What would it look like if a tech org was designed for us? A place that felt comfortable. That you knew you belonged and would be treated fairly in. This session is about designing just such an org. This will be an interactive session covering everything from hiring, to management practices, to what HR would have to look like. Come with your dreams.

Speakers

Accessibility Is A Hydra


This talk creates a metaphor between the work of web accessibility professionals and Hercules’s battle with the Lernaean hydra, and explain the myth, for those who may not know about it. Early in the talk, we’ll define a few terms for the purpose of discussion: - Ableism: systemic and multifaceted discrimination against people with disabilities - Disabled person (and person with a disability): a person who is characterized by having a disability. - Abled person: a person who is not considered to have a disability With this framework in place, we’ll: - Begin a discussion that references the Herculean legend as an analog to the repeated challenges web accessibility professionals face. - Discuss how working on technical inaccessibility is meaningless without addressing ableism - Consider everyday examples of ableism, ableist rhetoric (like “inspiration schlock” and common ableist language), and the power of invoking the word “ableism” in our professional lives. - Discuss how to take this information to foster better workplace environments. This talk is as much about responsibility as it is about tech. We will conclude with a call-to-action for Abled folks in the audience to put in the work - to be accomplices against ableism, and to stand beside disabled folks to #CauseAScene when they have the opportunity

Speakers

The Will Test: A Minority Engineer's Guide to Evaluating Company Culture


The Joel Test is a well known metric for evaluating the quality of a software engineering team. Every since Joel Spolsky wrote his classic blog post, engineers have been using his methodology as a way to determine if a company is a good place to work. As an engineer from an underrepresented group, there are usually other factors to heavily consider that fall outside the realm of the Joel Test. I'm dubbing these concerns The Will Test, a list of 9 factors that minority engineers can use to evaluate the culture of a company.

Speakers

How do we heal?


We have been working to foster a more diverse, inclusive, and equitable tech industry for years. We have poured billions of dollars into data collection, new hiring practices, unconscious bias trainings, and educational opportunities for people from underrepresented backgrounds. But we have yet to see meaningful and lasting change. In the age of “tech as a solution to everything” and its severe implications on humanity, the issue of our industry and society’s homogenous and harmful culture is more critical than ever. A true shift in consciousness, in how we see each other and our relationships is needed to radically transform ourselves and our communities. One where we move from asking “How do we train and hire more people from X background?” and “How do we take the bad people down?” to “How do we be whole and free together?” and “How do we heal?” How do we heal our communities and our industry? How do we heal our internalized racism, sexism, transphobia, and all our other harmful beliefs, thoughts, and behaviors? How do we heal the harms that were done to us and the harms we have done to others? Drawing inspiration from restorative justice practices, the work of the Code Cooperative, and my own journey of healing, I offer a hopeful vision for how we can come together and co-create the world we yearn for.

Speakers

Software Engineering

The 4 Tenets of Good Documentation


Good code documentation must tell the next developer (even if it’s the same person) the following four pieces of information: Purpose: why the code (be it a library, snippet, method, or class) was written, Function: what the code is doing, Form: how the code achieves what it’s doing, and Usage: how the code is to be used. Good documentation is part of being a good developer. It is often under appreciated until it’s needed, and then it is too late. I encourage every developer to get into the habit of documenting their code, if for no other reason than they will be able to understand what they have written themselves. I guarantee you, though, that if you diligently write good documentation, your coworkers and collaborators will love you for it.

Speakers

How We Tell Stories In Code


If you you ask the experts how to write 'good' software, they will likely emphasize precision and predictability. They may recommend great tools like functional programming, immutability, testing, and type systems - all of which aim to make software more reliable. But software must interact with the real world to be useful, and the real world always presents scenarios software does not account for. You can't write good software by trying to architect unpredictability out of your program. To write good working software, you must build systems that work well even though they are unpredictable and incomplete. Your code has to describe and solve a real world problem without accounting for all details of the problem. Good software tells a narrative, but like all narratives leaves things out. Maybe good programmers are really just good story tellers. Story telling is a process that we do all the time, including with our personal histories. Story telling both approximates the truth and influences our reality - the stories we tell affect how we remember the past and behave in the future. This has interesting implications for writing software - the systems we design affect and change the nature of the real problems they're designed to address. And the story we tell in code is directed as much to other programmers as it is to the machine the code runs on. Recognizing the messy, very human nature of writing software teaches us to trust our intuition, and makes us better programmers.

Speakers

Test What Matters


Ensuring we’re testing our UIs correctly can be difficult at times. All too often, our tests don’t provide us with the confidence they should because they focus on implementation details and other inconsequential aspects of our code. Our development teams at SalesLoft ran into this issue recently. Hard. We found we must test what matters: the user’s experience. Join me as we walk through why testing the user’s experience is the best choice, the available libraries that allow us to test the right things, and some practical examples based on work my team has done at SalesLoft.

Speakers

Web App Testing Reimagined


As developers, we're building the most advanced applications the web has ever seen, and we're investing more than ever in patterns, frameworks, and tools for building these apps. But building the app is only half the battle. We must also properly test our apps, and reliably ship them with a high level of confidence to ensure quality. However, testing web apps in real browsers has historically been a non-trivial task. Test tool setup, writing tests, resolving failures, handling flakiness, waiting on long CI jobs, etc. consume a lot of precious time, and cause a lot of headaches. This all adds a layer friction that often leads to developers doing very little to no testing. This no longer has to be the case, as there are now modern open-source tools like Cypress, that enable fast and reliable testing of web apps in real browsers while providing a developer experience that will actually make you want to write tests. In this session, we'll dive deep into Cypress and the associated tools, patterns, and ecosystem, so we can all build and ship web apps with confidence.

Speakers

The Truth: Native vs. Cross-Platform App Development


For years, the debate of whether developers should continue to build native applications or use cross-platform languages and frameworks (such as React Native or Flutter) has been a complex and heated one. In this talk, we’ll dig deeper into the root of the matter and look closer into weighing out the pros and cons of each development route to help you determine which is best for you!

Speakers

Testing presentation components visually


You have written all the unit tests, integration and e2e tests imaginable to your project, your code coverage is in the skies, you are sure that everything is in working order, your application is ready to ship. Or is it? Frontend developers often face the challenge that even a plethora of tests don’t cover visual differences, and while the functionality might be working and protected by tests, we don’t know much about the layout’s and visual styles’ correctness. Writing unit tests or manual testing for visual styles is tiresome and error-prone, so at BlackRock we came up with a better solution. Using Storybook and Storyshots we have developed a way of comparing visual differences of the rendered images of our presentational components. This solution enabled us to discover unwanted visual changes at once without manual testing the entire application with every release. Presentation, or dumb components are a function of their inputs, from the components point of view, their state is immutable, which enabled us to individually test the possible variations of the components, simply by providing them different inputs. In this talk I’m going through the technicalities of our approach, and discuss how any team could implement a similar solution. I’m also going to discuss how we integrated visual testing in the continuous development process and how we involved the UX and UI designers in the testing process. We have a global team, with coders and designers sometimes located in separate offices including Atlanta. This approach tightens collaboration and helps maintain a common design language.

Speakers

There Are More Beautiful Things Than Beyoncé.com


Jan 2019. Like any other day, Beyonce woke up like this: looking at her 26 MTV Video Awards, 23 Grammys, 16 Soul Train Awards, 11 NAACP Image Awards among the many more. Despite these musical accomplishments, many melodies and refrains, this ‘record’ breaking set of achievements hit a discordant note: a lawsuit. Beyoncé, and more specifically the Beyoncé.com website - was sued for not meeting the requirements as outlined in the Americans Disabilities Act also known as the ADA. Beyoncé sadly isn’t alone in the list of litigious challenges, as more high profile digital domains are confronted over poor accessibility. ‘There Are More Beautiful Things Than Beyoncé.com’ is a talk which will outline the technical details of the digital accessibility deficiencies across these sites, what should be regarded in every development workflow to maintain proper accessibility, and how accessibility benefits more than assistive technology users.

Speakers

Measure Twice, Cut Once: Coding Like a Builder


The first step to coding is not coding, but planning and creating hygienic code by using proper planning procedures. When starting a new coding project, that first line of code is often the most difficult to write. It can be overwhelming to build something from scratch. However, if writing code is the first thing you do when you start a new project, odds are you’re setting yourself up for failure. This session will look at steps developers should take before starting to code. Just like a home builder plans out a project using engineering reports, bids, and budgets before ever laying the first board, coders should strategically plan their projects before getting started.

Speakers

Fullstack Development in the Age of Serverless Computing


With the rapid advancements in serverless technologies, you no longer need to be a devops or backend engineer to be able to take advantage of the amazing capabilities that using serverless technologies provides. As serverless moves from custom implementation into the product phase of its lifecycle, more and more serverless services are becoming available. As developers we can now take full advantage of these services and build fully featured and production ready apps in weeks instead of months or years. Join me as we take a look at the landscape of serverless and how we can integrate these services and features into React apps today.

Speakers