Hi everyone, my name is Hetal Shah and I lead engineering recruiting here at Handshake. In this month’s installment of our “Explore Engineering” series, which features team members in different roles throughout our engineering organization, we’re highlighting Maribel Montejano. Maribel recently completed an apprenticeship and converted into a full-time role at Handshake as a Mobile Engineer. I had a great time learning about her background during a special Q&A session with her, which you can read below.
Falling in love with coding
Handshake (HS): Can you tell us a little bit about your background and experience?
Maribel (MM): Growing up, I was very passionate about science and went on to pursue it in college, where I double majored in Chemistry and Biology. What I’ve enjoyed about the discipline is getting a chance to apply concepts and seeing how things fit together, as well as the constant discovery and learning about the world around us. I’ve loved being able to perform applied research within the field of radiopharmaceutical chemistry (diagnostic applications in cancer imaging) and getting a chance to serve patients while working in a pharmacy.
Some time after graduating college, I began to explore computer programming as a hobby, and I realized that I was hooked after learning to write an automation script—it was simple, but it helped to improve the timing of a task by a lot! It was exciting and fun, and I also realized that many of the areas that I enjoyed about science also had parallels in computer programming, and could also be integrated. I will always continue to have a passion for science, and hope to combine the two in some way in the future.
My path and journey into software development was not direct, and had many curves along the way! I spent some time learning and exploring on the side, and eventually was able to create an opportunity for myself to devote more time to studies in Computer Science. While studying, I also worked part-time, and struck a balance between being able to code consistently and working. I took classes at City College of San Francisco (CCSF), to which I am immensely grateful for—the caring staff in the Computer Science (CS) and Computer Networking and Information Technology (CNIT) departments at CCSF were an invaluable support! I was also able to help TA for one of the foundational computer science courses at the campus, which allowed me to help others, meet other fellow students and coders, and to solidify my understanding of the material.
At CCSF, I went on to attend a free pilot program through CodePath, a nonprofit organization whose mission is to serve and bring access to underserved populations and provide resources in technologies such as mobile development (iOS and Android) and technical interview prep. This was my first step into mobile development, and I was able to have hands-on, immersive experience creating and building apps. I continued to learn outside of school alongside a friend and classmate to help build a React Native application for wifi-enabled landscape lighting equipment. Since I enjoyed mentoring at City College, I later applied and went on to work as a Teaching Assistant with CodePath to help facilitate Facebook’s annual Facebook University (FBU) for Engineering summer program, where I was able to work with students and help give lectures on iOS topics.
Apprenticeship at Handshake
HS: What was your role as an apprentice at Handshake? Can you describe the kinds of projects you were able to work on?
MM: My role as an apprentice was integrated within the mobile iOS team at Handshake, and my manager and I worked together to find tasks and projects that could build on six essential Core Competencies. Some of this involved learning our workflow at Handshake and all the tools we use through that process, learning key iOS concepts and development principles with Swift, exploring the codebase and common code patterns we follow, working with data from the backend server and using that on the client side, and writing tests to cover use cases. All of this involved on the job learning and training, and I had the opportunity to pair together for coding sessions with the engineers on our mobile team, which I credit to helping me grow and improve tremendously.
During my six month apprenticeship, I was able to work on a couple of different types of projects. I started with refactoring an Objective-C model into Swift, which wrapped several concepts such as exploring testing, error handling, gaining context into the Handshake application features, and introduction into data persistence. I then worked on building a part of a new release feature, which would allow students to connect with a student Ambassador through the mobile platform. Helping to assemble this feature involved a deep dive into design patterns, building the user interface for a new screen, creating thorough tests for its features, and getting a chance to work with networking code.
Other projects that I had an opportunity to work on was to help test Handshake’s push notification system as well as building networking services to use on the client side. I was also able to work on a personal project, which involved the replacement of a third-party library with custom networking that would be tailored to Handshake’s needs. I was given the liberty to work independently on this feature, and plan the architecture of how we would interface with the new networking client. Towards the end of my apprenticeship, I was able to work on product work alongside the team, which helped me gain more experience on working on and shipping production code.
Advice for aspiring software engineers
HS: As a woman software engineer, do you have any advice for other women who want to get into tech?
MM: Embracing diverse thinking within engineering is very important because it helps to fuel new ideas—regardless of gender identity, everyone brings a unique perspective and yours is your very own, so I would say to validate, nurture, and cultivate that within yourself. By placing trust in your intuition and breadth of experiences, you’ll be able to share and bring your thoughts, ideas and energy into your work, and that’s incredibly valuable. Approaching colleagues and peers with the same openness and curiosity helps us to connect, empathize, and appreciate each other’s perspective, and to also brainstorm and collaborate in fuller, genuine and meaningful ways.
HS: What advice would you give to other students who would like to get into coding?
MM: I have a couple of ideas that I’d like to offer that helped me along the way and hope to share. The first is to explore different areas of software development—it can help you find what you like and with that information, you can shape the direction you’d like to go! The other is to stay consistent with growth and learning, even if it’s devoting an hour a day at first. Building the habit to code can help with building and retaining the concepts you’re working with over the long-term, and that consistency can take you through your journey.
Take time to meet with others in the community who are doing the same as you, and learn together and encourage one another to meet goals. Not only does this help with motivation, but you can also inspire one another as you reach those milestones, and celebrate them together! There is also no project too small—even if it is just a concept for now, you can always continue to build on it. Have fun, enjoy, and always be learning!