Eighty four per cent of the world owns a smartphone which means that whatever app you build is going to have tremendous impact. I'm Sara Pak and I'm a Software Engineer at Meta based in Menlo Park, California. My story of being a mobile developer actually started with me as an economics major in my undergrad. While I was in my economics courses, I was hearing about all these hackathons, free pizzas, free swag. I decided to try one out and it was the first time I ever picked up any mobile development and I created a very almost embarrassingly simple app. I did not win, but I learned so much while creating this app and I just loved the ability to see what I could come out to real-life and see people use it. A typical day at Meta looks like me starting out with communications, so I look through a bunch of emails, or chats, posts, whatever I might have missed. While I do that, I pull the latest code and set up my development environment so that I can be prepared to code when that time comes. Typically, we have meetings scattered throughout the day, and that's to connect with cross-functional partners like product managers, design, other engineers to push projects forward. When I'm not in meetings, then I get to focus on the technical pieces like designing the technical architecture or of course coding. My favorite part of the workday is when I have a chunk of time to really dive deep into coding and in particular UI development because I love just seeing what I code come out on the surface of a phone or some device, and seeing the design and the buttons, the views, the images showing up. One of the most challenging things as a mobile developer is that you have to be aware of app size. This means that any code that you build, any function that you add, needs to be as concise as possible. You have to be aware that the device has limited memory, and so whatever you build and every line you add, adds to that memory. You have to be very careful and cautious about it, but the great thing is this does help you to become a stronger engineer because you're really making sure that every line you add is going to work well and efficiently. Some technical skills that I use on a daily basis is first the technical language as you might imagine. Currently, I use a mixture of native templates, blocks, and iOS native code to build our features. I would say another technical skill I use every day is data analysis because these are important for understanding how a feature works whether people are finding a benefit out of it or not based on whether they're using the feature or not. This really helps to inform the engineers what to fix, and what to improve. Communication, that one is key because we at Meta really work as a team and we have a lot of different functions. Coming in from an engineer background where we might speak with a lot of technical lingo, we have to make sure that we use layman terms to convey whilst building a certain thing may take so much time or why it's fast to build another way, and be able to convey that in a very concise and understandable way for product managers, or designers, or content designers who don't have any technical background. This really helps to drive the projects forward. There is no shortage of things to build at Meta, so being able to prioritize what will be the best experience for users and also be efficient in terms of building for the engineering technical side is really important to balance out and prioritize so that we really hone in on the best features. The way we work with iOS and Android developers is a lot of collaboration. Within each platform, all the engineers work together divvy up task to build for that particular platform, but across the two platforms we also collaborate a lot because the way we implement on one such as Android, we implement very similarly on the other such as iOS. We share a lot of our implementations across the board, and because both also share the server work we are able to collaborate a lot and share our knowledge. The way that the mobile developer's role is different from a UX or UI designer, is that the UX or UI designer creates the mocks, and the draft form of what we should build on a screen; what it should look like. It's like a drawing. The engineer then takes that and actually builds it and makes it work on an actual device. You can think of an analogy of like an architect who had draft out the drawings of the building and then a constructor then goes in and actually builds it, and so the engineer is the constructor and the UX/UI designer is the architect. I have noticed that good engineers are able to build out the UI fine, but excellent engineers really understand what's going on under the hood so that they can officially debug an issue. If you have that solid foundation, you'll be a very strong mobile developer because you'll understand what's happening. Technology does move fast, and with mobile development you really do interface with people. People's behavior affects what we built, but we've also found that technology influences people's behavior. It's really interesting to be at the forefront of seeing the evolution of how these two influence each other, and hopefully and ideally ensuring that technology does its best to serve people. Being a mobile developer is a very specialized skill set and it is high in demand in the market. Here at Meta we are always in need of more mobile engineers, so it'll be a great skill set to have. It'll really truly make you a well-rounded engineer compared to other engineering tracks because you are not only building algorithms or code, but you're also trying to interface with the user which means you have to understand the product and you also have to understand the data. It is really special to be able to know that what I build impacts so many people and that's billions of people use it. That's what gets me up every day at work because I know that the work I put in really helps people to have a better experience within whatever technology they're using within Meta. I wish you the very best on your exciting journey to become a mobile developer.