Posts

Seven Books to Launch Your Career in 2017

In the New Year, we often re-dedicate ourselves to self-improvement, re-invention, and to taking our career to the next level. To support that process of leveling up, Hackbright staff and instructors have recommended a few books for our readers!

The twist to this list is that all of the books were authored or co-authored by women, and they all offer ways to improve your “hard” or “soft” skills as a software developer or tech worker.

Note: Hackbright did not add any affiliate links to these book reviews (you’ll have to Google them!), and we are not receiving any revenue or other compensation for these recommendations.

Here’s our list of 7 books to launch your career this year:


#1 Cracking the Coding Interview by Gayle Laakmann McDowell

Recommended by Meggie Mahnken, Hackbright Director of Fellowship Education

Author Gayle Laakmann McDowell is a software developer, and she describes her book as a way to navigate the sometimes tricky coding questions that arise in interviews for software developer positions. The book’s purpose is to provide you with the opportunity to practice tackling 189 potential programming interview questions via her approach for breaking those questions down into manageable modular-sized chunks. Gayle’s ultimate goal for each reader is to develop a comfort level with these types of questions so that she or he can whip up flawless algorithms on the whiteboard during an interview!

Hackbright’s Meggie Mahnken’s quick take on the book: “It’s a no-nonsense overview of many topics that would otherwise be intimidating to tackle. The introductory chapters on different types of technical interview questions, runtime, and other fundamental topics never fail to motivate me to enjoy the process of whiteboarding. Technical explanations are peppered with ‘real world’ interviewing insights. Even though it’s not in my primary language (python), the Java code snippets are incredibly approachable and informative.”


#2 Cracking the Tech Career by Gayle Laakmann McDowell

Recommended by Meggie Mahnken, Hackbright Director of Fellowship Education

51RyRAUq4xL._SX321_BO1,204,203,200_

Following her book on acing the coding interview (#1 above), Gayle new book offers targeted career advice for landing a job at a top tech company like Google, Apple, or Microsoft. She provides guidance on potential career paths, and how to develop the right type of experience, mindset, and skills so that you’ll be a good cultural fit at these companies.  Bottom line, this book shows you what the hiring committee wants, and how you can develop a career path to achieve it.

 


#3 Hello Web App by Tracy Osborn

Recommended by Hackbright VP of Strategic Partnerships & Mentoring Angie Chang

41r8gDyCqkL._SX322_BO1,204,203,200_

Tracy Osborn’s book “Hello Web App” is geared towards non-programmers (or newly minted developers) who would like to build and design their own custom web app using Python and Django. The book supports readers through the process of choosing a project, setting up a database, creating templates, and launching your app.  Tracy is also planning on releasing a new book, “Hello Web Design”, later this year which focuses on web design fundamentals and shortcuts for non-designers.

 


#4 Two Scoops of Django by Audrey Roy Greenfield 

Recommended by Hackbright TAs Jennifer Griffith-Delgado and Meg Bishop

Image result for two scoops of django
 In this third edition of her book, Audrey Roy Greenfield provides tips, tricks, patterns, code snippets and techniques that will help you master Django. The book is not designed as a Django tutorial, however, so you should be somewhat familiar with Django first so that you can leverage this as a valuable Django resource.  A few example chapters include: optimal Django environments, fundamentals of Django app design, queries and the database layer, building and consuming rest APIs, testing best practices, finding and reducing bottlenecks, security best practices, logging and debugging, etc.

#5 Doing Data Science by Cathy O’Neil and Rachel Schutt

Recommended by Hackbright Instructor Henry Chen

Image result for doing data science cathy o'neil

“Doing Data Science” is based on lectures from the Introduction to Data Science course taught at Columbia University. In many of these chapter-long lectures, data scientists from companies such as Google, Microsoft, and eBay share new algorithms, methods, and models by presenting case studies and the code they use.  If you’re familiar with linear algebra, probability, and statistics, and have programming experience, this book is an ideal introduction to data science. The book is collaboration between course instructor Rachel Schutt, Senior VP of Data Science at News Corp, and data science consultant Cathy O’Neil, a former senior data scientist at Johnson Research Labs. Cathy just released a book in 2016, “Weapons of Math Destruction”, about the dangers of Big Data (it was longlisted for the 2016 National Book Award).


#6 Probabilistic Graphical Models by Daphne Koller and Nir Friedman

Recommended by Hackbright Instructor Henry Chen

Image result for Probabilistic Graphical Models by Daphne Koller

This book complements the same OpenClassroom and Coursera courses by Stanford Professor Daphne Koller and her co-instructor Nir Friedman. The introduction to reasoning algorithms (machine learning) is based upon probabilistic graphical models that capture and analyze uncertainty. From the Coursera course, the content covers probabilistic graphical models (PGMs) as a rich framework for encoding probability distributions over complex domains. These representations sit at the intersection of statistics and computer science, probability theory, graph algorithms, machine learning, etc. They are the basis for a wide variety of applications, such as medical diagnosis, image understanding, speech recognition, natural language processing, etc.


#7 Program Development in Java by Barbara Liskov and John Guttag

Recommended by Hackbright Instructor Henry Chen

Image result for Program Development in Java by Barbara Liskov

“Program Development in Java” is aimed for students who know how to write small programs, and are at the stage of enrolling in a second or third programming course. Readers should be familiar with Java, but this is not a “how to code in Java” book. Java is just the “vehicle” for teaching key concepts for the whole process of developing production-ready software. The book is written by Barbara Liskov, an MIT Professor (and winner of the 2008 Turing Award), and John Guttag, also a professor at MIT. The focus of the book is on modular program construction: how to organize a program as a collection of well-chosen modules. It centers on four main topics: requirements analysis, iterative program design, debugging and testing, and design patterns.


Like these books? There are dozens more! 

Finally, if you’d like to discover more tech books authored by women, an invaluable resource is Etsy Engineering Director Lara Hogan’s list of tech books authored by women.

And if you think we should feature other books in a future list, please add your suggestions via the comments below!

16 Inspiring Women Engineers To Watch

Women’s engineering school Hackbright Academy is excited to share some updates from graduates of the software engineering fellowship. Check out what these 16 women are doing now at their companies – and what languages, frameworks, databases and other technologies these engineers use on the job!

Software Engineer, Aclima

Tiffany Williams is a software engineer at Aclima, where she builds software tools to ingest, process and manage city-scale environmental data sets enabled by Aclima’s sensor networks. Follow her on Twitter at @twilliamsphd.
Technologies: Python, SQL, Cassandra, MariaDB, Docker, Kubernetes, Google Cloud

Software Engineer, Eventbrite

Maggie Shine works on backend and frontend application development to make buying a ticket on Eventbrite a great experience. In 2014, she helped build a WiFi-enabled basal body temperature fertility tracking device at a hardware hackathon. Follow her on Twitter at @magksh.
Technologies: Python, Django, Celery, MySQL, Redis, Backbone, Marionette, React, Sass

User Experience Engineer, GoDaddy

Terri Wong is in the user experience and design group at GoDaddy, where she helps bring innovative product concepts to life in design and development. She helps define and deliver new features, testing new concepts. Follow her on Twitter at @terriwonglee.
Technologies: JavaScript, React, Node, Less, SCSS, Framer, Sketch, Figma, InVision

Software Engineer, Google

Nicole Ziemlak spent over a year as a software engineer at Minted developing their e-commerce infrastructure after Hackbright, then joined the Google Store team to help build an e-commerce platform to sell the latest hardware from Google. Follow her on Twitter at @imnikkiz.
Technologies: Java, JavaScript, HTML/CSS, and a host of Google proprietary technologies

Data Engineer, IMVU

Marlene Hirose is a data engineer at IMVU, where she maintains and creates tools for automation of data ETL for use by data analysts and scientist. She joined IMVU as a consultant, and celebrated her one year full-time-versary this week! Follow her on Twitter at @mariki816.
Technologies: HiveQL, Hadoop, Scala, Spark, Python, Tableau

Software Engineer in Test, Kahuna

Shilpa Sirur works in software development at Kahuna to design and execute testability of a product feature, providing feedback on its quality. Prior to attending Hackbright’s engineering fellowship, she worked as a QA engineer at SurveyMonkey for two years.
Technologies: Python, JavaScript, HTML, CSS, Pytest, Nosetests, Unittests, Jenkins, Testrail, Sauce Labs, Google App Engine, SQL

Software Engineer, New Relic

Erika Arnold writes stable, lightweight machine code at New Relic that monitors the performance of customers’ applications. She gives back by volunteering as a Mentor at Hackbright Academy from the New Relic Portland office. Follow her on Twitter at @erikabugs.
Technologies: C, Go, PHP, Python, Docker

Software Engineer, Radius Intelligence

Susan Chin is a software engineer at Radius Intelligence, where she aggregates data to pass down the pipeline that builds the Radius Business Graph. She joined Radius first as an engineering intern after Hackbright, and is now full-time. Follow her on Twitter at @susancodes.
Technologies: Python, Spark, Databricks, AWS (S3, EC2, EMR, RDS), PostgreSQL, Kubernetes, Docker, Ansible, Rundeck

Application Engineer, Slack

Carly Robinson works as an application engineer at Slack – building product features, design and implement API methods, and improve performance and reliability of Slack’s backend infrastructure. Follow her on Twitter at @carlyhasredhair.
Technologies: PHP, MySQL, Hack/HHVM, AWS, Solr, Redis, Java, Linux

Software Engineer, Square

Liana Lo is building the payment routing system behind Square Cash along with a front-end admin user interface for simple payment routing rule management. After Hackbright, she worked as a full-stack developer at Prezi for a year before joining Square. Follow her on Twitter at @lilohacks.
Technologies: Java, MySQL, Ruby, JavaScript

Lead Software Engineer, SurveyMonkey

Louise Fox is the tech lead for the mobile team at SurveyMonkey, where she’s been working for over 3 years. Her role involves code reviewing, new features, and creating React patterns for other people to use. Follow her on Twitter at @kaboomfox.
Technologies: Python, Node, React, sometimes Java and Objective C

Technology Leadership Program I Engineer, Target

Paola Socorro is in her first rotation in Target‘s Technology Leadership Program, where she is building APIs and restructuring the CI/CD pipeline to meet the newest standards. Follow her on Twitter at @paromi.
Technologies: Java, Groovy, Scala, Spock, Springboot, Gradle, Chef, Jenkins, Artifactory, Nginx, node-proxy, Gatling, Openstack

Software Engineer, Terra Bella (Google)

Danielle Levi works on the front-end web application at Terra Bella (acquired by Google), enabling order entry for satellite imagery and status tracking in the imaging pipeline. She is currently volunteering as a mentor at Hackbright Academy. Follow her on Twitter at @danislevi.
Technologies: JavaScript, Polymer, (Google) Closure, Karma/Jasmine

Software Engineer, Uber

Theresa Cay is a software engineer at Uber on the developer experience team in core infrastructure. She works to increase developer productivity and efficiency through automation, tooling, and information. Follow her on Twitter at @theresa_clare.
Technologies: Go, Java, Python, JavaScript, Tornado, Flask, Node, React, MySQL, Jenkins, Puppet, Vagrant, AWS (EC2 & S3), Elasticsearch, Sphinx, Phabricator, Git

Software Engineer, Wantify

Breanna Turcsanyi is a software engineer and team lead at Wantify. She leads a team of 6 at an early-stage startup, building a product for small businesses with scalable, modular architecture that allows for feature changes and future adjustments. Follow her on Twitter at @br3annalynnn.
Technologies: SCSS, JavaScript/JQuery, Angular, C#/ASP.NET MVC, SQL Server, Azure, ElasticSearch, Xamarin / Xamarin Forms (mobile)

Software Engineer, Yelp

Katherine Wu develops full-stack features at Yelp to facilitate advertisement sales flow. A former teacher, Katherine took the part-time course at Hackbright before joining the 12-week full-time engineering fellowship program at Hackbright.
Technologies: Python, MySQL, JavaScript, Cheetah, SCSS, Git, Bash

We are so proud of our Hackbright engineering fellowship alumnae for getting to where they are today. Through their hard work at the fellowship, combined with learning outside of the classroom and on-the-job training, they have developed into talented and respected engineers I am honored to know.



Advice from Dropbox Engineers for Women in Tech

walking-through-the-quiet-work

We seized the opportunity to speak with engineers at the new Dropbox headquarters and get some advice on how to go from student to engineer at a successful tech company. Dropbox engineers shared advice for women in tech including insider tips to help with job searches, new-hire training and mentorship. Join us as we step into a surprising world of themed rooms, roof-top exploration, and the minds of brilliant engineers.

 


Exploring Dropbox

Hackbrighters with the Dropbox dragonDropbox hosted an exciting field trip for Hackbright Academy’s software engineering fellows and it started off with a warm welcome and tour of their new headquarters. We explored all 5 floors and the roof of Dropbox in small groups, guided by members of the Dropbox team who shared insights into each floor. Many of the floors were designed based on a theme of the 5 senses–we saw the smell-themed first floor, where the Dropbox cafe sits and has coffee brewing every morning; the sights-themed second floor, complete with warm pink quiet office spaces and sky blue open office spaces for all styles of working; the taste-themed third floor that holds the Dropbox Tuck shop where masterchef-quality meals are served; and the sound-themed fifth floor, where we discovered the Dropbox music area with instruments for a full band.

We also explored the Dropbox roof area, taking in views of the bay and imagining what it’d might be like to work outdoors on such a beautiful day.

After our tour, we headed to the Dropbox 4th floor for lunch, and then the Dropbox team kicked off a panel that included network engineers, product managers, engineering managers and software engineers who had such great advice to share with us.

Q&A Panel with Dropbox Engineers

listening-to-panel-of-engineer (2)

 

The panel consisted of Hackbright alumna Kayla Smith, Tammy Butow, Andrew Fong, Genevieve Sheehan, Jensen Hussey and Amandine Lee. They began the discussion by sharing details of their typical workday schedule, and what they had worked on in the last week. Then, they dove into a Q&A session:

 

 

What is Dropbox looking for when hiring entry level engineers, especially from coding bootcamps? What can we do to be competitive applicant?

You want to work on things you can do to distinguish yourself from the pack and show what you are able to do.

Make sure to share your code on any projects you build on Github so that people can take a look. Try rewriting something you’ve built in another language, or with a different database, to show that you can think in that next-level sort of way.

Then speak at conferences about the things that you have built! You don’t need any kind of credential to do this–get together with a few people, build something, and then talk about what you’ve created publicly. You can also look into open source resources–many companies provide this–and try them out.

Put yourself out there by attending conferences, and educate yourself by reading resources like High Scalability–that site provides insights on how tech companies have built their websites.

When you are interviewing, show your willingness to learn and practice having a good mental model for what the code looks like—that’s more important than having the right answer off the bat to any question you might be asked.

Also, show that you are competent at prioritizing. It’s so important to be able to tie what you are working on to how it affects business. Being able to break a larger project down into smaller pieces is a skill that managers value very highly!

As you go through your jobs and roles in your career, keep in touch with people in a semi-professional and personal way—those connections are powerful now and down the line, and they can help you to get insider views or do research before you interview with companies you are interested in.

Another great resource to explore is Cracking the Tech Career, by the same author of Cracking the Coding Interview Gayle Laakmann McDowell. Explore that as well for more advice!

How would you describe the Dropbox culture around management and communication?

There is a lot of interaction with managers and teammates—regular one on ones, chatting on Slack and on Google Hangouts, even traveling to Dublin to visit remote members of the team.

In addition, regardless of who your manager is, there are a lot of people who you can talk to.

When you are job searching, know that you are also interviewing your manager and the company as a whole. You want to gauge NOT whether or not I want to have lunch with this person, but rather, do I share the same work values as this person, are they trustworthy, and am I confident that I can share feedback that they will heed and respect?

Dropbox culture values sharing things at a very early stage, even when they are not fully developed. That means you’ll need to be vulnerable enough to show your work process and your thoughts when they are not fully finished and be ok with that. Dropbox has also been one of the least aggressive places to work in because they focus on having everyone on board before moving forward, even if that makes things more complicated sometimes. They value that level of communication and collaboration.

What is Dropbox doing to welcome and support people of color and women in the workplace?

Dropbox’s Diversity Program works to support multiple initiatives around diversity, including employee resource groups like Women at Dropbox, Asians at Dropbox, Pridebox, Blackbox, and Latinbox to name a few. Dropbox team members are also empowered to create resource groups that aren’t already established. And, there is a robust and active Parents Resource Group provided at Dropbox.

What does mentorship at Dropbox look like?

You get paired with one mentor when you start at Dropbox, and that person teaches you about the codebase, helps you get set you up on systems, and is your go-to for things like how to use the vending machine. Plus, whenever you have a big change, you are provided with a new mentor to help you through that transition as well.

Hackbrighters with a Dropbox female engineerWhen you are in mentor-mentee relationship, it’s ok to be a sounding board and listen to what each other are working on. Doing just that can be powerfully valuable. When asking questions, find out how they arrived at the answer to the question, or what they would have done differently, so you can learn both the answer and the thought process behind the answer.

Also, look for organic relationships that can develop into mentorships instead of waiting to be matched/paired with someone as your mentor. Organic mentorships are some of the most powerful relationships!

Have any of the panelists come from non-traditional backgrounds? What is your advice for us?

Jensen got into tech through her love of neopets, but ended up attending a trade school to get her massage degree. She didn’t know that she could get into tech without a degree, but after talking with some friends who encouraged her, she took the leap and began teaching herself to code. She was determined in her job search, sending out a hundreds of applications until she got her start at OkCupid and began her career in tech from there.

It’s important to be fearless in that hustle to get your next job. It’s ok to ask for help, put yourself out there, and put out seeds and start using that fearless attitude to look for companies that you want to work for and that match with what you care about.

When someone tells you “you don’t come from Y, so why should I X,” treat that as an opportunity to close the gap in their understanding of your background and what you bring to the table, instead of reading that as something to keep you down. 

Be prepared for the job search. You won’t feel hopeful every day, but every single day you can apply for 5 more jobs. Set goals to keep pushing yourself and do what you can to keep yourself on target, so you can continue learning. It’s the volume vs. quality balance in the job search.

2016-08-30 14.47.13-1Kayla, a Hackbright alumna, was a biologist before transitioning into tech. She worked in customer services at a genomics company and was intrigued by coding as she started to imagine the SQL queries she could run for customer services requests she received. Her interest in video games also led her to explore the networks behind software, and that’s what officially landed her in tech.  

Kayla’s approach to her job search was to apply systematically; invest a lot of time and focus into the companies you really want to work one at a time, and do deep research so that you can apply in a targeted way and also interview extremely well.

Amandine started out as a physicist but realized that programming helped with solving a lot of the problems she was tackling. She also wanted to write better code as a physicist and went to a hacker school to kick off her career in programming. Her advice is to continue learning on the job. Even if the first one you get isn’t perfect, it’s the perfect opportunity to learn so much of what you would never otherwise learn outside of a formal job. 

What do you think every software engineer should know?

Be comfortable with the feeling that there’s still a lot to learn; to not feel stupid when you don’t know something, but to recognize that you just haven’t learned that yet and you will.

Coordination, rather than technical skill, is most important when writing code. Thinking through problems, like how do I name this variable so that others aren’t confused later on when they read my code, are the details that make you a better engineer.

Know the implications of the work you are doing—both in the business context and in the engineering context—and be attentive to the implications of all the code you write. That will make you so much better at your job and allow you to improve on what you are doing all the time.

Be methodical about the things you do try, so you can measure the effect of them and narrow down issues to a specific problem. Document you problem solving so that someone else can also benefit from that later one.

Respect the janitor more than the chairman in any role you are in–always greet the janitors and make the effort to connect with the people on your path.

img_3234--1-

So much great information! Thank you Dropbox for welcoming us into your space and getting us prepared and excited for our futures in tech.


Hackbright Academy is the leading engineering school for women in San Francisco dedicated to closing the gender gap in the tech industry. Learn more about our full-time software engineering fellowshipIntro to Programming night courses, volunteer mentor opportunities, and how to partner with us to hire female software engineers and #changetheratio of women in tech!