When she looked for graduate programs, she heard from friends who had attended Rice University as undergraduates that the Computer Science faculty really took care of their students, spending time to really guide them. “And I really prefer hot weather to cold, so that ruled out a lot of schools,” she said.
Zhu loves learning new things and she found her niche studying programming languages with Walid Taha at Rice. But when she was completing her masters degree, Taha accepted a position at Halmstead University in Sweden.
“I briefly considered moving to Sweden to continue working with Walid, but recognized the cold would be a problem. My other option was to find another adviser at Rice.” Zhu said she went to talk to Joe Warren, who was the department chair at the time.
“Joe was very helpful,” she said. “I was on the edge of giving up on a Ph.D. and just going to work in industry with my masters. He suggested I take a 12-month leave instead. So I worked full time for Schlumberger for a year and I really enjoyed the work, but realized what I wanted most was to go back and finish my degree.”
Schlumberger also helped her realize her strengths lie in execution. She said, “In research, you are build on theory and you develop prototypes. At Schlumberger, I was working on a tool that was heavily utilized, and I found working on tools that people use every day is what gives me the most satisfaction.”
The opportunity to work on actual products was the primary reason she chose industry over academia after completing her Ph.D. “You don’t need a Ph.D. to go into industry, but it actually helped my career in several ways,” she said.
“Regardless of how fast or efficiently you can program, you will eventually hit a wall,” said Zhu. “Engineers with a Ph.D. can approach problems using their higher theoretical knowledge, and it helps you evaluate how the overall problem is connected.”
She said that the opportunity to spend those years focused on a particular research area developed her skill to work independently, and it also taught her skills that have been useful for leadership. In the four years she has worked in the Bay Area tech industry, Zhu has been promoted twice before becoming a manager.
“Research trains you to think independently and find solutions independently. This includes how to evaluate a problem, how to go search for related information you may need, and how to try really hard to solve it. Once you have that mindset, it is easier for you to take responsibility –or even leadership roles– for each project in which you participate. Which in turn, helps you grow faster in your career.”
Both of her employers, Square and Airbnb, proactively seek to increase diversity among their engineers, and Zhu has become actively engaged in some of Airbnb’s recruiting programs. “I can see there is a lot of effort being put into hiring women engineers, and it doesn’t end with new hires. For promotion and career progression, the whole company puts forth a lot of support to help female engineers succeed.”
She said she doesn’t notice she might be a minority until she goes to recruit other women. “For my normal day-to-day work, I never notice any difference between me and my colleagues. At Square, I was promoted to senior engineer after my first year, and at Airbnb, I moved from senior engineer to staff engineer and recently to engineer manager. They’ve really given me an opportunity to grow.”
Zhu prefers working with the back-end of systems, although she’s comfortable with front-end development as well. “If you think about it, the backend is the part right behind the user interface, so it is not all that far from the customer,” she said.
Her sense of job satisfaction is linked to achieving goals, but not necessarily her own individual goals. Last year, she led a project with many junior engineers and new hires. Even though everyone was determined to work hard, due to the complexity and scope of the project, the entire team lacked confidence in the beginning about meeting their goal on time.
“When we actually achieved that goal, it was such a feeling of success! I feel both proud and lucky to work with such talented and hard-working peers,” she said. “Most of the time, a good day is measured by how much you have achieved or accomplished, but I am even more happy if I helped someone else achieve his or her goal.”
In a similar way, Luay Nakhleh helped Zhu achieve her own goal of earning a Ph.D. In 2010, after putting her plans on hold for a year, Zhu approached Nakhleh about being her adviser.
“In his computational theory course, I had learned to apply abstract theory to mathematical problems. He had taught us to think of every computer as a tool, a machine to use to solve the kinds of problems engineers deal with – it all comes down to computational programs or theory.
“I really liked Luay, he’s very wise but also very nice. And he remembered me when I went to talk to him about coming back to finish my Ph.D. Switching to bioinformatics was tough. I love to try new things and bioinformatics has opened so many doors for me, but it was almost like I hadn’t even completed my masters. I was almost starting over, but now I feel lucky I had that experience because I have a more diverse background than most software engineers.”
Another CS professor, Scott Rixner, also influenced how Zhu approaches problems. “Scott teaches several courses on advanced computer architecture and real systems. In those classes, instead of telling you how systems should work, he lets you read a lot of papers with case studies, and inspires you to think and discuss: what are the problems in real systems? how are all those things you learn acting together in those systems? or even, how systems do not work the way they are supposed to. Those classes and discussions really helped me to bridge theory and real systems, and practice how we apply what we learned as theory to a real world problem or system.”
Zhu’s advice for other Ph.D. students is to make the most of their years in the program. “Those five or six years you spend getting your Ph.D. are very precious. You will never have that same kind of environment again, where you are just there to learn and have few distractions. Take advantage of all the courses; the knowledge you gain will be so valuable.”
She said the broader view of computational problem solving that graduate students develop pays off in industry. “A good programmer can learn to code better and faster, but will always hit a ceiling. If you can think about things holistically and from different angles, you understand all the details behind the programming.
“I never saw myself as a programmer, I always think of myself as an engineer. A programmer essentially implements things other people designed. The engineer thinks about system design and architecture and how to solve real world problems, not just code one part of the system.”