My Transition from Public Relations Manager to Software Engineer at Artsy

Image for post
Image for post
Photo by Simon John-McHaffie on Unsplash

Staying agile and adaptable has never been more critical to surviving — and especially thriving — in the chaos that has been 2020.

I spent the last year in a career pivot: transforming from a public relations manager to an entry-level software engineer. The journey was a roller coaster of challenges, failures, fatigue, and successes. Before we had even heard the word “coronavirus” and shaking hands with strangers was a normal thing we did, I was laid off from my dream job at Artsy — my first job out of college, the place where I built my community and my career. Starting 2020 unemployed felt like a giant boulder had been tossed into the river I had been cruising down, waves splintering my neatly assembled raft into a thousand pieces. …

How Company Values Can Make an Intern Feel at Home

Image for post
Image for post
Source: Photo by Christin Hume on Unsplash

I graduated from Flatiron’s full-stack boot camp on March 27, 2020. Covid cases were spiking, the country was shut down, and the economy was going haywire. Unemployment would peak in April at 14.7% — the highest ever recorded since this data was first made available. With senior engineers flooding the market because of layoffs and companies freezing headcount in hopes of weathering the storm, the job market was pretty bleak, especially for junior engineers. I was worried.

A few months later, I got incredibly lucky. I saw someone post about intern roles at VTS in my boot camp’s alumni Slack channel. A friend of mine worked at VTS and loved the company, so I decided to put my name in the hat. …

The Core Principles for Bringing on Fresh Engineering Talent During and After Covid

Image for post
Image for post
Source: Photo by Chris Montgomery on Unsplash

For better or worse, our jobs are an important source for meeting our needs as humans. Without places to go or people to see, the global pandemic only puts more pressure on our work life. Long before Covid, structured onboarding proved to be directly correlated to an employee’s happiness, productivity, and ultimate success in their role. In other words, first impressions are important, and onboarding is a way for a company to show new team members that they can deliver on our social and emotional needs.

There are huge implications for business, too. Low productivity and retention are expensive, and structured onboarding processes result in a lift in both: 62% and 50%, respectively, among new hires according to one study. …

The most important reform to promote diversity and inclusion in your engineering organization

Image for post
Image for post
Photo: Kaleidico/Unsplash

In 2017, prominent software engineers took to Twitter to confess that they would fail a whiteboard interview. A popular way to evaluate programmers of all experience levels, “whiteboarding” involves presenting candidates with a computer science problem to solve on a whiteboard in real time. Engineers have been complaining about them for years.

David Heinemeier Hansson, the founder of Ruby on Rails, one of the most successful web frameworks in history, led the way. Top developers from Google, Microsoft, and the New York Times joined in.

Yet whiteboarding still constitutes a core part of the interview process at many tech companies, especially at FAANG (Facebook, Apple, Amazon, Netflix, and Google) and unicorn companies. …

And how I got my first role as a software engineer

Image for post
Image for post
Photo by Christina @ on Unsplash

For years, the gender gap in software engineering has been a hot-button issue. Companies ramped up diversity and inclusion efforts, all-women and women-identifying boot camps became more prominent, and the conversation about parity made it into mainstream dialogue. Yet the problem persists.

Computer science programs at universities have been growing in popularity, making introductory CS courses extremely competitive. The likelihood of success is higher for those entering college with previous programming experience, which disproportionately affects women. Without a computer science degree, a common option is a software engineering boot camp. …

Why It’s Important to Learn Another Backend Framework as a Rails Developer

Image for post
Image for post

What is a framework and why use one?

A framework is a collection of code, tools, and utilities that give you a specific structure to work with when you’re writing software. The most common frameworks are Ruby on Rails (Ruby), Django (Python), Flask (Python), Spring (Java), Laravel (PHP), React (JS), Express (JS), and Angular (JS). Some of these are full-stack and others are frontend or backend frameworks. With a framework, your program becomes more structured. Because a lot of functionality comes built-in, your resources become freed up to focus on building out what makes your application unique. Developers hate doing work that has been done before. …

How failing a technical screen helped me grow as a developer

Image for post
Image for post
Photo: Christian Wiediger/Unsplash

As a software engineer entering the job market, I have had the opportunity to speak with dozens of companies, from two-person startups to giant companies, including Facebook and Amazon.

Companies interview technical talent in vastly different ways. I have been asked to share stories about my past experience, build a stock trading application in four days, and the classic — solve a coding problem on a whiteboard to show my chops in algorithms and data structures.

I have learned so much throughout this process.

One of my most recent interviews was a one-hour phone screen with an Amazon engineer. In addition to the behavioral component (two pieces of advice there: STAR method and Leadership Principles), we spent a little over half of the time working through a coding question on a digital whiteboard while speaking over the phone. I didn’t end up moving past this stage (aka I failed — trying to get more comfortable saying this out loud), but I learned a ton. …

A Beginner’s Guide to Understanding How to Design, Build, and Scale a System and Why It’s Important to Know as a Software Engineer

I recently interviewed for an entry-level production engineering role at a Facebook, which included a section on Systems Design. As a software engineer, I had learned about programming languages and frameworks, OOP, data structures, algorithms, and other concepts in computer science and programming. Systems Design, however, was very new to me.

My work was cut out for me. Creating masterfully architected study guides with way too much detail was one of my favorite parts of school. (I’m a nerd.) So I took this opportunity to get back to my roots and pretend this was a college exam.

Although I did not land the job, I learned so much through the process. It became clear to me that understanding the structures and systems that underpinned my work as a developer was not only relevant but actually critical to becoming a great engineer. …

Image for post
Image for post

My first exposure to a programming language was Python in a computer science course while I was an undergraduate student at UC Berkeley. When I was first introduced to coding, I started out by learning the fundamentals: What is a variable? A conditional? A loop? I learned the building blocks of programming — how to tell the computer to perform certain actions.

When I started learning a new programming language, the process was entirely different. At Flatiron, the first language you learn is Ruby. As with Python, we learned the fundamental concepts and actions — again, variables, conditionals, loops, etc. Both Python and Ruby are built upon the foundational concepts of computer science. The actions they convey are the same, but the way they are expressed is different. …

How to turn your coding skills into art

Image for post
Image for post

Art making is often associated with concepts like freedom, expressiveness, ambiguity, and colorful. Coding on the other hand is described as systematic, organized, scientific, and rigid. I have heard many people say that they cannot learn to code because they too “left-brained” or that they cannot do art because they are too “right-brained.” Increasingly, the blurring of the lines between these pursuits is encouraged and celebrated. Here you will see that software engineers and artists have more in common than it may seem.

I have always been fascinated by the intersection between coding and art, which led me to join Artsy in 2015, the leading tech company in the fine art industry. As I am moving from the art world to the world of software engineering through the Flatiron School’s software engineering boot camp, I am discovering even more parallels between them. …


Anna Carey

Software engineer @Artsy. At the intersection of storytelling, art, and technology.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store