Meet Rebecca Franks. A 23 year old coder living in Johannesburg. Over the next few weeks we’ll be picking the brains of women that inspire us. The folks over at Wireless Wipes are sponsoring this feature and allowing us to feature the best geeks, tech heads and all round rad ladies in South Africa.
Rebecca developed this funky lotto app (which you can download in the Play Store). We sat down with her and found out what it takes to code.
What subjects did you take in high school?
I took Mathematical Science, Life Science, Physical Science, Accounting, English and Afrikaans. My high school did not offer Computer Science as a subject which I really thought would put me at a disadvantage going into university, but it didn’t turn out that way. For the first few weeks of university, it was tough, I had no idea what I was doing. I thought I would never be able to get it right but after a while I got the hang of coding and really started enjoying it.
What did you study at university?
I studied a BSc Information Technology degree at the University of Johannesburg. I went on to study my honours in Information Technology, graduating cum laude for both degrees.
Obviously, education isn’t enough – what other skills and interests assisted you in getting into app development?
I think my general passion for learning new programming languages and frameworks assisted me. I started out playing around with Android, making apps at university and my passion for mobile development has just grown from there. A general interest in technology and all kinds of gadgets got me wanting to develop apps.
What is your day job?
I am a Mobile Applications Software Engineer, primarily focusing on Android development. This means I design applications from start to finish mainly focusing on internal corporate applications but hopefully a few more consumer facing apps on the way.
Why Android?
I chose Android because I believe the platform is a great place for developers and users. Its open source, and quite unrestricted so you can do a whole lot more than other platforms. It also doesn’t require you to own specific hardware, you can get up and running with any laptop and do not need an android phone to develop with.
Walk us through the process of developing apps – from start to finish?
- Well first you have got to have a good idea, this is probably the most difficult part – thinking of something unique. Then you obviously should do a bit of research as to what is available out there already, if this idea exists, then you need to think about what is going to set your app apart from the other apps on the market? Is it going to look sexier, provide more features, or be a cheaper alternative?
- Next thing you need to do is take some time to design it, think of how it should look, and make a couple of mock ups of what you think the app should look like.
- Start with something basic, the main feature of the application perhaps. This is when the programming skills will have to come into play, you will need to architect your application and think about how the whole app should work – eg. Does it need to have a server which stores information, or will the device store the information. There are a lot of questions that can come up here, but for a simple app, you shouldn’t need to over think it too much.
- Once you have decided how the app should work, a list of “To dos” should be written, this should be the functionality of the application.
- You should then pick one off the list, and start coding, I usually start designing the actual screens, get it looking like the mock up, and then once I am happy, I do all the back end work – storing information to the database or connecting to a server.
- Once you have finished a task, pick up the next item on the list. Once all the items are complete, you should have an almost complete application. Simple, right? Its not always this easy – but all kinds of development follows this simple pattern.
- During the process of writing the app you should keep track of any bugs found and fix them as you go.
- Once you have decided that you application is bug-free – give it to a few friends and ask them to play around on the app. They will find bugs you never knew existed.
- Once you have finished testing, you can then package your application and submit to the Google Play Store!
Best part of your job?
Developing something that helps people with their day to day lives, whether it entertains people, gives health advice or is simply an easier way to access information. It is rewarding to be able to provide people with the ability to do things quicker than before, and have access to information and content easily. The challenge of creating an app as well is also awesome, every day I get to learn something I never knew before, its exciting and every day is a different learning experience.
Worst part of your job?
I’d say the worst part is the fact that people think you fix computers for a living – as soon as you tell them you are in IT, they will ask you to fix their PC. A lot of people do not understand the different types of IT work you can get into, and they don’t really understand that my focus is on software and not hardware. Other than the occasional friend asking you to fix something of theirs, I don’t have anything else to complain about.
Advice to other girls wanting to follow the same career path?
The demand for skilled software engineers is high and getting into software development is a great choice for girls as it doesn’t involve manual labour! If you are unsure about if you would enjoy coding or be good at it, try it out online for a bit, there are a lot of great resources available for people to learn how to code. Take a look at websites such as http://code.org andhttp://www.codecademy.com/ which teach the basics of coding, this will give you a good idea of what its all about and if its what you could see yourself doing for the rest of your life. I enjoy the challenges, and enjoy creating software, and I’m sure plenty of like minded girls would enjoy it too.
There is a lot of talk about getting more girls in tech. When you were studying and now working – do you feel you are discriminated against because of your gender?
Most of the time I don’t feel that way, but if I do I just shrug it off. A lot of people have very shocked looks when I tell them that I am a Software developer, but the shock they respond with is not a bad thing, I guess there is just the assumption that girls don’t like programming.
Should we be doing more to get girls into coding?
I think a lot of people think coding is not for them, where as I believe it’s an essential skill to have. I think it should be taught from a very young age, as it helps you to think logically about how to solve problems. There are lots of easy ways for people to start coding – without having to go and study it at a university. If you are unsure about if you would enjoy it or be good at it there are plenty of resources available online. The web is great for learning the basics and once you understand one language, you can easily pick up another and enjoy the world of coding.
To find out more about Rebecca visit her website or connect with her on LinkedIn. You can also follow her on twitter.