With the right resources and education, the tech world becomes a woman’s playground. Just take a look Danielle Levi — software engineer, engineering fellow, and all-around great example of a woman who’s found happiness in tech.
Danielle Levi works on the data platform team at Skybox Imaging. Prior to that, she attended Hackbright Academy in Fall 2013. She holds a degree in psychology from Stanford University. Clever, outgoing, and always ready to help (collaboration is an essential part of engineering, after all), Danielle shares her latest advice for new programmers on the career jungle gym.
It’s incredibly easy to get overwhelmed by the whale that is computer science, especially if you’re learning it untraditionally. Programs, like bootcamps and university majors, are great because they decompose and prioritize things for you. When you learn things informally, I think it’s important to impose structure and limit the scope of what you focus on. It’s unrealistic to try to know everything at a great depth in a short amount of time. True knowledge comes only with time and experience, so patience and self-understanding are key.
For me, the most important characteristic is perseverance. As a programmer, your life revolves around problem-solving. On a high level, you are given a problem and you design solutions for it. Within each proposed solution, you come across even smaller problems and bugs. Often the way that you initially tackle it will not automatically work and the resolution of one bug can lead to many more. Programming can be a frustrating experience, but having perseverance and creative thinking ensures that you can stay with a problem and approach it from many perspectives until you finally reach a working solution. The process will rarely be straightforward and direct but being perseverant and reaching a resolution is so rewarding.
My advice is to have confidence! I think many women suffer from a lack of self-confidence, including myself. It’s easy to compare yourself to others in the industry and find yourself lacking. However, it’s often not a fair comparison. In my case, I found my interest in technology and computer science at a later point in life. I’ve had less time to learn as much. Everyone has their own unique obstacles. It’s better to compare yourself to yourself. Think about your progress, how much you’ve accomplished, and exercise self-compassion. Stay passionate and keep learning.
How Did You Get Your Job?
I had read about Skybox Imaging before I knew they were a Hackbright Academy partner company and thought that they were such a unique, innovative company. So, I was very grateful that Hackbright gave me the opportunity to interview with them.
I really enjoy my job. Right now, I am creating a program that uses MapReduce jobs to archive/manage files on our Hadoop’s Distributed File System. Hadoop is incredibly powerful and its applications are impressive. I would definitely consider delving deeper into it and working with big data. In the future, I want to break into Android mobile development, which would be a natural progression since I program in Java.
What Does Your Day Look Like As A Software Engineer?
Every morning starts up stand-ups. The day’s work always varies, but, usually, it’s a mixture of meetings (we adhere to agile methodologies) and a few hours of uninterrupted programming.
Right now, I’m working on a MapReduce program that archives files in HDFS (Hadoop Distributed File System). I program primarily in Java and tools include Hadoop, Ant, GitHub, Sonar, so many more…
I recently learned shell scripting and I love how efficient it makes me. Resource-wise, there’s a GitHub repo floating around that contains a ton of free programming books. I used Welcome to Java for Python Programmers to help with my transition from Python to Java after Hackbright.
I also like to watch video tutorials on youtube, including a series by “Cave of Programming.” I think it’s helpful to have a variety of different sources. Recently, I’ve been reading “Effective Java,” which has been instrumental in teaching me more of the intermediate/advanced Java material.
What’s Your Favorite Part of Being a Software Engineer?
So much opportunity to do meaningful work! I’m eternally grateful to Skybox and my team lead because they’ve given me projects that simultaneously fit well with my current experience and challenge me. I feel lucky that I work at a company that lets me experiment with Hadoop as a junior engineer.
The best part about being a woman in tech is the community. There is such a tight bond between the females in this movement. It feels great to know that there are people who support you and, even more, freely offer to foster your growth. Hackbright is a fantastic source of connections and has proved helpful beyond the 10 weeks of the program. Recently, they connected me with a mentor who specialized in Java and Hadoop, which has been integral to my development.
How Did You Get Started?
I came from a family that had an appreciation for technology but was intimidated by its complexities. We definitely were not considered early adopters and that apprehension towards technology existed for awhile. My first exposure to programming was in college when I took the introductory course to computer science. It was nothing like what I had expected. It was less explicit math, and more problem solving and logic, which I’ve always enjoyed. You familiarized yourself with a toolset and figured out how to combine them to reach the desired output.
During that same quarter, I also worked in a psychology lab as a coder (different kind! not programming but counting for certain behaviors) for a study on the correlation between social emotions and facial action units. If you’ve ever seen “Lie to Me,” it was pretty much like that but much less exciting. It was incredibly labor and time-intensive. My fellow coders often complained about how tedious the work was and questioned why we did it manually when facial recognition software could probably automate the whole process.
In retrospect, I know now that we underestimated the complexity of creating that kind of software (and undervalued the unique powers of humans). However, at the time, it sparked an interest in the ability of programming to amplify human productivity and made me think about programming applications that extended beyond contrived, academic problems to real, human-centric problems. Unfortunately, this happened during the last quarter of my senior year, so I had to find alternative ways to broaden my computer science knowledge outside of college… Hackbright!