Stay Tuned for More Meetups Soon
At Zocdoc, we are actively working to improve gender diversity throughout our technology organization. To support employees’ unique identities and interests, anyone is welcome to create or join self-organized groups called ZocClubs. Women at Zocdoc is one of our largest ZocClubs and is dedicated to inspiring women throughout the company. To bring additional focus on gender diversity within our tech team, we also now have a Women in Tech group.
On the heels of International Women’s Day, we were excited to host our very first Women in Tech meetup at our newly-renovated Soho headquarters. The event included a series of technical lighting talks delivered by esteemed NYC-based engineers from our peers throughout the tech industry. Zocdoc’s Carly Litchfield, a full-stack engineer, moderated the event and our CTO Serkan Kutan kicked off the evening’s proceedings.
As our meetup kicked off, we were blown away by how many people RSVP’ed — we sold out! — and filled the room, clearly demonstrating that this remains an immensely important issue for our industry. With this in mind we plan on hosting another WIT event this summer, so stay tuned!
Equally inspiring was our roster of speakers, and the experiences and expertise they shared with us, which we’ve summarized below.
Tech Debt at Scale
Take a lesson from Meetup and rebrand your tech debt as “Continuous Product Health” to get everyone excited about tackling it!
Meetup CTO Yvette Pasqua walked us through their journey in managing tech debt as an organization. Meetup asked themselves, “How can we empower every engineer to make the Meetup product faster and better?” One immediately obvious answer: tackling tech debt.
Additional approaches included educating the entire company on the long-term benefits of investing in product health. They formed a platform engineering organization with goals that were directly tied to continuous product health. This team would establish a pattern of gathering ideas from their colleagues on how to improve the platform, then prioritize the issues that needed fixing, address them, and regularly re-evaluate them.
During the first 6 months, they discovered that even though they had closed a lot of tickets, most of them were low-effort and low-impact tasks. Instead, they decided to focus on high impact issues first, while also tying in priority projects related to ongoing initiatives.
Organizing CSS Stylesheet with Colors
How many shades of gray does one application really need? Name your colors after crayon colors instead of referencing features to keep a CSS color stylesheet organized throughout years of design iterations.
Liann Sun, Software Engineer II @ Braze (formerly Appboy), walked us through a fun rendition of what happens to a CSS stylesheet when many people build many things over the years in the same codebase, for the same product. You might recognize this from your own experience: you start with a nice, clean stylesheet – in Liann’s example, she cited a CSS file with a few different colors all organized by a design style guide — but then, well, things change. Years later, the same file contained many additional colors and features, all with different naming conventions. It was a bit messy.
One way to help with this issue? Add a layer of abstraction! Being more strict with any hard-coded hex codes in pull requests that are not added to the color stylesheet, and changing the naming convention to use crayon colors (how fun!) has helped keep everything much cleaner.
Manual Map-Reduce in BigQuery
What do you do when you have limited time to complete a project and a BigQuery that times out? You get creative!
Emily Sommer, Data Engineer @ Spotify (previously Etsy), walked us through creative ways in which to aggregate and serve data for 200MM users based on their listening history for an entire year with manual Map-Reduce in BigQuery.
When Emily was faced with this task and given only 3 weeks to work with, she had to get creative. She decided to work with BigQuery as it fails faster, however, the queries were timing out so she experimented with splitting the 200MM users in 14 groups, running each query for each different stage, and then manually reducing all the data at the end. Even though Emily prefaced her talk by warning the audience not to interpret the topic as best practice, we are very impressed with her resourceful solution to the given problem.
Let’s Stick Together
Peggy Rayzis, Open Source Engineer @ Apollo, is often seen giving talks about using Apollo clients for GraphQL, complete with examples and updates on improvements to clients, as she builds tools to help make GraphQL accessible to more people. For our meetup however, Peggy had the courage to talk to us about a recent negative experience at a conference, where she was scheduled to present.
The organizers photoshopped her face on a scantily dressed Wonder Woman picture without her consent, and planned to use it as part of her presentation. Unfortunately, when she decided to withdraw after careful consideration, the conference organizers shamed her on social media.
You can read about the full event in her own words here. Peggy’s advice to the audience was to trust our instincts when confronted with clues that might indicate a problem, support events where organizers make an extra effort to create an inclusive environment — either by offering childcare, taking dietary restrictions into account or creating a diverse speaker lineup — and not to feel guilty about calling attention to bad behavior. If we want to change the environment then we’ll need to speak up, as it’s difficult if not impossible to change the culture on our own.
We are grateful to Peggy for opening up to us about this experience, and for reiterating the importance of sticking together.
Tweet by Jackie Ore
Organizing your Dev Environment
Want to optimize your development environment but not sure how? Read on for some helpful best practices and examples that work well and help make development more seamless.
Trisha Quan, Senior Engineer @ Democratic National Committee (previously Pinterest and Twitter), spoke about best practices for optimizing your development environment. Trisha ran through some pros and cons of setting up a remote machine for development: the biggest advantage is allowing for easy mass DevOps management and connection to sensitive resources and the biggest disadvantage is the inability to work offline.
Another helpful tool she used at Twitter was a git-review wrapper, which helped with pull request management. The tool automates checking for uncommitted files, running tests and lint, and preventing engineers from submitting without approval or passing tests. Trisha also talked about how Pinterest made Python debugging more painless through easy access to iPython and ipdb across multiple environments.
Silver Bullets for Mobile Apps
Mobile app engineers have created a few strategies for maintaining high quality for apps in the last ten years since developers started creating applications for iOS and Android phones.
Yours truly, Ruxy Levy, talked through some best practices in the mobile app world and making it easier to handle some of the typical gotchas of mobile app development. There’s a twist: there may not be silver bullets for dealing with attribution across many different channels and platforms, but there are certainly ways to solve for them. Some of the best practices discussed include:
- Versioning API requests or using something like GraphQL for backwards compatibility for older app versions;
- Strategies for deprecating older app version by forcing or nudging users to upgrade;
- Finding vendors which offer api solutions instead of SDKs when third-party usage is needed;
- Adding kill switches for SDKs that can’t be avoided;
- Using headers instead of cookies;
- Relying on a well-defined utm parameter structure for attribution reporting from universal links and deep links as the unifying pattern between in-house links, Branch, ESPs and MMPs.
Halfway through the meetup, we took a break from the talks and planted floppy disks underneath the chairs of three unsuspecting audience members.
Those who found the disks were offered the opportunity to donate $100 each to a charity of their choice devoted to advancing women in technology at the end of the event. As a result, we donated $200 to Black Girls Code and $100 to Girls Who Code on behalf of our three lucky winners!
Emily Muggleton was one of our lucky winners!
Many thanks to Ariana Rodriguez and Rachel Liang for their work in bringing the entire event together — we couldn’t have done it without them! Thank you’s are also in order to our exceptional speakers, Zocdoc’s office operations and IT teams (who created a lovely setup and flow for the event), our supporting Zocdoc’rs in attendance, our moderator Carly Litchfield and Zocdoc CTO and women-in-tech ally Serkan Kutan.
If you weren’t able to attend the event in person, you’re in luck! You can watch it online here.
Overall we’ve received a ton of feedback on the event and we’re looking forward to organizing another meetup this summer. More to come soon!
About the author
Ruxandra Levy is the Director of Mobile Engineering at Zocdoc (previously Gilt and Saks), focused on iOS and Android apps. She is mom to a toddler, and enjoys traveling in addition to attending local family-friendly events on the Upper West Side.