A complex set of unconscious biases puts barriers in the path of women and people of color when it comes to technology jobs. This series highlights women developers in our community. I encourage you to share these stories, and your own, with someone who doesn’t “fit” the stereotype of a programmer. In this small way, we can change the ratio.
Jess Lopez did not plan to be a programmer, but fell in love with coding in college. She is now the Director of Web Engineering at New York Cares, helping more than 59,000 volunteers to serve 400,000 at-risk New Yorkers by coding on Force.com. She shares her story and advice here.
How did you learn to code? What do you love about it?
I learned HTML as part of a course I took my freshman year of college. It wasn’t pretty — I think there were a lot of animated gifs with repeating background images. I then took a Java class because I heard that you could program Tetris. I had never been exposed to the concepts of a computer language, and I got lost halfway through the course and had to drop it. I was still intrigued so I took a C++ class where the concepts finally sunk in. I went back and took that initial Java class again (for fun!) the second semester of my senior year and aced it.
I love problem solving. I love building something that can save hours of employees’ time. I love the feeling of saving a line of code with no errors or of getting 100% unit test coverage. I love seeing the whiteboard mappings and the notebook sketches come into fruition. I love that I may not be on the front lines, but what I am doing behind-the-scenes will ultimately help a lot of people.
How long have you been a Salesforce Developer? How did you get started?
I have been developing on the platform for about five years. I started while I was working at a non-profit, New York Cares, when they transitioned from an aging set of roughly 50 Filemaker databases. We needed to redevelop our website to hook into Salesforce, so I pored through a bunch of API and PHP Toolkit documentation and dug in. I dove into Apex by taking a course and looking through other code examples.
I grew my skills working at WebMD with Frank Zirpolo, doing administration, Apex, and Visualforce. After I was there for two years, they hired a contractor for day-to-day admin tasks so I could focus more on implementing strategic projects — talking to the business, architecting and developing solutions. I also got to work very closely with an external developer, Stephen Mills, which was a fantastic experience. It was the first time in my life that I worked closely with another developer and it was definitely rewarding to bounce ideas off of him, show each other different projects that we worked on, and get excited about Apex enhancements in each Salesforce release. I learned a ton.
Now, I am back at New York Cares as their Director of Web Engineering. I’m super psyched because it allows me to not only continue developing on the Salesforce Platform, but also web and mobile development.
How does developing for non-profits different from for-profits?
I’m lucky to work for a tech-savvy non-profit. We kind of have to be, given how transactional and complex our web functionality is and how much data we have in the Salesforce Platform. Working for a non-profit is rewarding. Last year, New York Cares planned and managed 1,600 volunteer projects each month and mobilized more than 59,000 volunteers to meet pressing community needs and serve 400,000 at-risk New Yorkers.
Your budget is obviously much more restricted at a non-profit, which can be challenging, but it also forces you to be creative and thoughtful about how you approach and accomplish something. You may not be able to afford the cost of a full copy sandbox, and justifying a trip to Dreamforce might be a little tougher (but I’m working on it!).
Finally, you get to wear many hats. In any given week, I might be writing Apex or Visualforce, doing QA, giving a demo, analyzing data, doing admin stuff, or playing the part of project manager or business analyst.
The thing to keep in mind is that there are other ways of “giving back” besides working for a non-profit. I heard recently that something like 80% of non-profits have a budget of under $1 million. You can certainly volunteer your time or consult with non-profits using Salesforce [via these: Taproot Foundation,NPower Community Corps, Catchafire or SocialCoding4Good]. There are also businesses with strong models for giving back, such as B Corporations or salesforce.com’s own 1-1-1 model. At the end of the day, your Apex trigger is an Apex trigger regardless of the type of company you work for; it’s just how you think about the end result. (i.e., this will help 70 employees plan almost 20,000 projects and ultimately help 400,000 people in one year). That’s a pretty awesome feeling.
Are you developing mobile apps for New York Cares?
Not yet. Right now we are focusing on making our website mobile-responsive so that our constituents have an efficient way of transacting with us across all platforms. I do see Salesforce1 being instrumental in how we implement some business efficiency apps for our staff in the near future, though.
What has been the biggest change you’ve seen in your time with the Salesforce Platform?
Obviously, the Salesforce1 Mobile App is a huge change. It blows the classic mobile app out of the water. Cross-object workflow was a big hit and I’m sure it allowed a lot of companies to get rid of code that used to accomplish the same functionality. It’s satisfying to see something that you voted for on the IdeaExchange come to fruition.
What other languages do you use? How was the learning curve for Apex/Visualforce?
Do you have any Salesforce Certifications?
Yes. I am both a certified Administrator and Developer. When I get a bit more time on my hands, I am definitely aiming for the Advanced Developer certification. Maintaining my certifications has been great as it forces me to read up on each release’s new features and learn about the areas of Salesforce I don’t typically use day-to-day, in order to pass each release exam. It also allows me to step back and think about how any new features could apply to something I’ve done in the past. If I can change something to run declaratively vs. programmatically, I will, as it will allow admins who may not code to make updates.
I’ve met many admins who are interested in learning to code. What is your advice to them?
As an admin, you already have the advantage of knowing how your data is structured. Formula fields will give you an intro to basic logic and if you’ve ever exported data from the Data Loader, you’ll notice that as you choose your fields and add filters, you can see a SOQL query being formed in the box below. I encourage you to look at that SOQL query and the next time you need to export data, write your own SOQL query as opposed to using the tools above.
Definitely head over to developer.force.com and get a developer edition org so you can poke around with data that’s not your own. While you’re there, check out all of the amazing workbooks and documentation on the site (as well as on developer.salesforce.com). Take some online or classroom courses. Join your local developer group; I’ve learned a ton by attending the NYC group [next meetup is March 13th!].
Check out the forums; chances are, someone else has asked the same question in the past and the community has posted some really great answers. Keep learning. Try to build something that other people have done, such as code that clones an object and one or more of its related lists. And finally, break your projects into milestones so you can have small victories with each piece of the puzzle that you figure out.
What is it like being a woman in a technology field?
It can be lonely, but empowering, too. The percentage of women in technology is shockingly low. It still surprises me how few women developers I see out there. What that means, though, is there are lots of opportunities to lead. I’ve never really experienced the gender divide from within my own department in a company, as I’ve mostly been in 2-3 person departments. I’ve also been lucky to have been encouraged by my supervisors, including Frank Zirpolo at WebMD and Josh Ehrlich at New York Cares. They’ve both seen my potential and supported me over the years.
Do you have kids? Do they code? What is your advice to parents of young children who express an interest in technology?
Not yet, but my wife and I are planning to have kids in the next few years. My advice is to introduce kids to as many skills as possible. My parents encouraged me to test my limits through sports – for years, I was a competitive ski racer and have also played soccer, baseball, football and golf; now I run marathons. These experiences taught me to work towards goals, both individually and with teammates. That’s a great skill to develop as you grow. I would also say that you don’t have to major in computer science to become a programmer. I was actually a Visual Art major in college.