Fresh start

Hello blog followers! It’s been a while..

I’ve been positively useless at maintaining this blog this year. What with crossing the final hurdle of my course, starting a new job and other life curveballs it has massively slipped my mind!

So this year I have been..

  • Getting qualified: I handed in my final project of my course in July, BEST FEELING EVER. My final project was an issue tracker much like GitHub, made with Django. I’m pretty proud of it, considering I made it in two weeks.. in the evenings.. while working/commuting 60+ hours a week.. I got the results back for my diploma in August – FIRST CLASS HONOURS šŸŽ‰
  • Got published: I worked with The Learning People to publish an article with We Are Tech Women highlighting what it’s like to be a female junior developer. I’m really pleased with how it turned out!
  • Got a new job: I recently started a new role as a Frontend Engineer on the Enlitened app at The Student Room. I use React & React Native to create new features, and maintain the student app and university client dashboard app. I’m really proud to be working on such an innovative platform, aimed at improving student wellbeing and engagement. It’s definitely something I wish I’d had when I was at uni, so Iā€™m excited to see it take off!

It’s been a bonkers year, i’ve learned so much and progressed a lot professionally but it’s also taken its toll in terms of near burnout. It’s really important to seek help if you are struggling with the effects of burnout. I recognised the symptoms from when I was at uni 10 years ago (*feels old*) and got in contact with a counsellor to integrate some CBT (Cognitive Behavioural Therapy) practices into my daily routine. I wouldn’t say i’m 100% recovered from it all yet, but i’m on the right trajectory.

Looking forward..

So 2020 is just around the corner. This year i’ll be..

Turning 30. This fact just feels hilarious to me as I still feel mentally like an 18 year old. Feels all the weirder to say by the end of this decade i’ll be close to 40 šŸ‘€šŸ˜±
Focusing on my mental health. I saw something on Twitter recently along the lines of ‘you should grind and work hard (60+ hours a week) if you want to make something of yourself’ – I can categorically say, don’t do it kids. Yeah I progressed quickly in my career, but i’m also having to spend Ā£100 a month on therapy so šŸ˜…šŸ¤¦ā€ā™€ļø There’s literally no rush, learn at your own pace and surround yourself with good mentors. On reflection, I definitely fell foul to my impatience at wanting to lose my ‘junior’ badge after 2 years of wearing it with pride. Now i’m just going to enjoy the challenge of being a mid-level developer for a while I think!

Getting stronger. I don’t want this to be one of those new years resolutions that gets binned by mid January, but I really do need to incorporate some form of regular physical activity into my day-to-day. I’ve been walking to and from work since I started my new job so that’s giving me around 6000 steps a day of cardio from that alone, but i’d like to incorporate strength training to improve my core and general stamina. I’m starting with bodyweight training at home so I don’t make a total fool of myself when I eventually enter a gym šŸ˜†

Becoming a cat or dog parent. Pretty self explanatory.

Hopefully future me can look back on this at the end of 2020 and have achieved some of these goals!

Happy New Decade everyone! šŸŽ‰

A Little Update..

It’s been six months since my last blog post, which I can 100% say is due to having a jam-packed six months. Also partially that I didn’t know how to sum all of it up!

So, updates on what i’ve been up to in the past six months..

Finalised my Front End Project: I was making a static site to advertise a golfing holiday resort as my front end project. The aim of this project was just to showcase some front-end skills, and didn’t need to be hooked up to a database. I had been working on this in the early part of 2018 but revisited it to add some extra functionality/fix any little bugs I found. I changed the map image on the booking page to have a Google Maps API functionality, and edited the form so that a ‘thank you’ pop up appeared if the form was validated and submitted. Github here and static site here

Capture

Completed the Practical Python project: After I had finished the Stream One module for my course, I migrated over to the new version of the course content to begin the Practical Python milestone project. The specification of the project is to produce an app, using Flask (a Python micro framework) – for my project I created a science riddle app (can’t take the science nerd out of the girl!). Users should enter a username, then proceed to answer each question (without cheating!). They are then presented with their list of answers, alongside the correct answers. The user can then view on the leaderboard where they placed in comparison with their peers. This project was a real learning curve, building the back-end in Flask and then linking it up to the front-end with Jinja2 templating was great fun and i’ve learned a lot! There’s still some tweaks to do in terms of making it look a bit better UI-wise but overall i’m happy with it šŸ™‚ Moving on to look at the Data Centric Development module next.

riddle

In June there was a restructuring of our team at my workplace and I was moved onto doing more complex changes for clients (my previous role in the company had been to carry out the small, free of charge changes to clients sites). This was exciting as it meant I could build my skills and complete more difficult changes such as implementing payment plugins, creating advertising plugins and writing data feeds for clients.

In October I was offered a new job as a Junior Application Developer for a company called My PT Hub. Their product is an app for personal trainers to manage clients, training programmes etc. I’m really excited to be joining the team on Monday! šŸ™‚

This week I filmed a video testimonial for The Learning People regarding my course. I had a great morning with the team!

With my new adventure in mind, i’ve been thinking about the direction I want this blog to go in so that it benefits me as a reflective piece, and fellow/future students who are getting into coding. So, new aims for the blog are:

  • Updates on my career for me to look back on, and for friends/family/colleagues to follow!
  • How to’s on little things i’m learning along the way
  • Showcase projects i’m making for my course

I think that is all for now.. šŸ™‚

Handy Web Resources

I wanted to write a post about the handy web resources that I have found useful over the past 10 months since I started learning to code. It’s a very daunting mountain to climb when you start out as a coder, there is just SO MUCH to learn and you often have no idea where to start. A real needle-in-a-haystack situation. These resources I found were great for when I got really stuck on a piece of code that just WOULD NOT WORK or if I just wanted to learn a new coding language. When you start working as a coder especially, you are encouraged to find the answers yourselves before you resort to smiling nicely and bugging your fellow developers. These are the resources I have used in these times to get the answers I need to resolve coding issues:

Stack overflow

A fountain of knowledge from developers all over the world! Basically a huge forum for coders to post issues they are having with their code, and other coders can suggest fixes or ways to improve your code.

stackoverflow

W3Schools

This site is a collection of online web tutorials in everything from the HTML basics, through to server side languages (PHP, SQL). I have found this website hugely beneficial whilst learning how to do things at work, or during my course as their tutorials are easy to follow and understand. Their ‘Try It Yourself’ function brings up a mini IDE (Integrated Development Environment) which allows you to edit and run code on the screen in real time. Simple, but effective!

w3schools

MDN Web Docs

AKA Mozilla Developer Network – This site is a compendium of reference guides, developer tools and tutorials on the various coding languages, a more advanced version of W3Schools! I was only recently introduced to this so I will update this section as I begin to use the site more.

mdn

Sololearn

A free learning platform that you can use on your laptop and an app on your mobile for coding practice on the go! You choose a language you would like to learn about, and you get taken through tutorials and mini exercises. There are mini quizzes throughout the tutorials to check your learning, and a downloadable certificate at the end of each course!

sololearn

Codecademy

This is quite similar to Sololearn in that you can complete free courses on a variety of different coding languages. Codecademy also offers paid ‘Pro’ courses but I found the free courses sufficient to help me prepare for an interview, for example!

codecademy

freeCodeCamp

I found freeCodeCamp to be similar to W3schools but with the option for certification if you wish to! With the options for Front End, Back End and Data Visualisation courses these give a junior developer a thorough grounding to give them the skills needed to apply for their first coding jobs!

frecodecamp

Pluralsight

Pluralsight is a wonderful (if slightly pricey) collection of video resources for learning pretty much anything in code! Depending on what type of learner you are, if you prefer to watch video tutorials and code alongside them then this is a great resource. It takes a bit of time to find the right level of video that you need (i.e. never try looking at an intermediate C# course in your first week as an employed Junior coder.. scared the living daylights out of me!) but the videos that are marked as ‘Foundations’ or for ‘Beginners’ are a great starting point. You can also follow ‘paths’ so if you want to be a better Javascript coder for example, you can follow the Javascript path which gives you videos tailored for that language. Depending on where you work, some companies may have an account with Pluralsight that you can use otherwise it is about Ā£23 a month or Ā£230 a year.

pluralsight

Code Institute through The Learning People

This is the bootcamp diploma course I am currently studying to become a Full Stack Web Developer. You can study through Code Institute directly, or you can go through a company called The Learning People who enroll you on the course and give you extra support through their StudentCare team. I found enrolling through The Learning People hugely supportive when I was going through a career-change period in my life as they offered reassurance and advice on applying for jobs. The course itself is very thorough and allows you to create several mini projects as well as the big ‘milestone’ projects at the end of every module. You also get mentoring from experienced coders in the field. My tutor for example used to work for Google, and is now the Head of Mentoring at Code Institute. While this is a particularly pricey option, it is great in terms of maintaining motivation to study (nothing quite like a financial guilt-trip to push you to study at 10pm!) and the support you get from the team is outstanding.

codeinstitute

It’s not all sunshine and rainbows..

People have visions of coding life to be full of innovation, daily wins and inspiration – and some days are! But there are other days when you just feel like hibernating until it all blows over. I think it’s important to show the not-so-pretty side to learning to code. Inspiration for this post has come from a couple of really bloody hard, trying weeks and gives an honest account of the trials and tribulations of a career as a junior developer.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

As a junior developer it’s fairly normal to have ‘imposter syndrome’, in fact I feel out of my depth 90% of the time. There will be days when things just do not go your way, when bugs appear out of nowhere, the workload piles on and there’s not enough hours in the day to get everything done.

My role as a developer is mostly back-end development. In my role, clients post tickets on an online support system for website changes such as inserting Google Analytics tracking or for a data extract. I came back off of a weeks break to move house, and the number of tickets in my queue had tripled since i’d last seen it (yay!)

Deadlines. You will have deadlines. Clients sometimes have very tight deadlines to keep to, and missing these deadlines may have a negative impact on their business. My normal working week of 37 hours was more like 42 hours once i’d made sure that clients requests were completed. This meant lots of lunching-on-the-job and staying late.

Not only are there tight deadlines, but you will get last-minute urgent requests that needed to have been done yesterday (hello time machine)

There will be days when you get stuck on a problem and you just cannot get anything else done until it is resolved. It’s when you go to reflect the following morning in a team stand-up that you realise ‘oh cr*p thats time i’m never going to get back’

When you’re a junior developer there’s A LOT of things you do not know yet, even what others deem to be the most simplest of things. You don’t know what you don’t know, right? You will take longer to get things done, and you will need to ask the advice of other developers from time to time – but what if they are also too busy? Online reference tools will become your best friend to bridge that gap and prevent the ‘I know nothing’ panic from setting in – I’m doing a post about the online resources I use very soon.

Linked to the point above is the expectation from your colleagues to know certain things. There are a lot of junior/graduate developers that have come from uni where they have studied for three years for a Computer Science degree, and there are junior developers who literally picked up coding 7 months ago with no prior knowledge. Naturally the second type of person (*cough* me) are going to take a little longer to pick things up. It’s like telling a person who has only spoken one language all their life to suddenly learn 5 extra languages fluently and use them every day to communicate rather than using their native language. If you have previously studied the language before and therefore have some prior knowledge (e.g. the CompSci graduate) then this mammoth task is less scary than the person who has zero prior knowledge. I think that sometimes people around you can forget that they need to manage their expectations of your speed of progress based on your prior knowledge/how long you’ve been in the field.

By the start of this week I had gotten my queue back down to single figures (woo!) so I was put onto the design queue (front end development) to help out with their ever growing Everest of tickets. This was fun and great to add another string to my bow, but this also meant juggling my ongoing back-end work with front-end, doubling my workload.

You may have allotted ‘study times’ at work, but this does not always pan out. If you have weeks like I have just had, every last minute is precious and you just may not have time that week to study.

In addition to my work life, I am also studying outside of work for a software development diploma. At the moment I am doing the final tweaks on my first Front-End project but every time I submit what I think is a final draft.. more feedback comes back.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Not every week is like this, but there will be weeks when you’re thinking ‘what am I doing?!’ This is natural, and helps you to become a better, more organised software developer that is able to cope with a multitude of challenges. For now, I am going to make the most of this Bank Holiday weekend before the craziness begins again next week! šŸ™‚

Maintaining a work/life balance

Hi everyone!

In this blog post I wanted to tell you about my first few months as a developer, and discuss how to maintain a work/life balance when you are starting out. I’m not going to lie, I haven’t 100% managed this yet! When I first accepted my job offer back in October, one of the student advisers on my course lovingly referred to this year as being my ‘year of hell’ – but one that will propel me into the world of tech, have me learning new things every day and will provide me with a career that I love.

I began working as a Junior developer just over 4 months ago now, which comes with its very own punch-you-in-the-face learning curve. Alongside this I am studying for my diploma in Software Development. And with what little time there is left in the day – I am supposed to fit in a social life.

worklifebalance

For the first 3 months of my job I have put my course on hold so that I can immerse myself in the world of tech, which has enabled me to learn a shed-load at work – but the guilt of not progressing with my course has felt very real.

Last month I passed my final probation at work, which comes with it’s own targets for the next few months. My first target is to learn SQL (a database language) at a higher level. I use SQL on a daily basis in my role, and I have found that this language is very much something you learn on the job rather than out of a book/video. I found that videos and books give examples from very small, simple tables e.g. ‘a table listing some groceries, run some queries to find the groceries you need’… when in real life, the databases I work with contain MILLIONS of entries of data.

sql

My second target is to learn more C# to prepare me for moving onto more complex development work later in the year. My predecessors in this role (who are now my seniors!) have all said how they wished they had learned more C# prior to moving up in their role. This has been really valuable advice from them, as not only have they set me on a solid learning strategy, but they obviously care about my career trajectory to offer this advice. To improve my knowledge of C# I have been using a combination of Pluralsight and Youtube videos, Code Academy courses and quite simply actually looking at the code in the software we create at work and working out how all of this fits together.

With this in mind you might be thinking.. how the hell is she supposed to get her coursework done, whilst learning new languages at work, and have time to talk to real-life humans outside of work!?

Well.. I must admit the social life has taken a hit the past few months. BUT, things are getting better. I think to see progress in your learning you have to fully throw yourself into something initially – but as you gain confidence and knowledge, you start to find ways to compartmentalise your learning and form a routine. Recently I arranged with my manager to alter my working hours to allow me to study at work. I find when I get home from work my brain is mush, so factoring in some time in the middle of the day to do coursework is making the most of my productive time. So I will be working 8am – 5.30pm with a two hour lunch break to a) grab food and b) do some code. I’m looking forward to seeing whether this works for me, as this will get me an extra 1.5 hours per day (7.5 hours per week) of study that I was just too tired to do before. This structured time for learning will ensure I actually get things done, and this way when I get home from work the evening is mine to do with as I wish! I can then do a few hours on the weekend where time permits.

The past few months have been crazy and mentally challenging, but in the best way – I can’t wait to learn more things! Hopefully this new study plan allows me to get things done whilst factoring in some time to relax šŸ™‚

I passed my probation!!

On the 12th February I officially passed my probation to be a permanent developer at Madgex! It’s been amazing, and difficult and i’m fairly certain I lost part of my brain at one point.. but I can officially say i’m a coder now!

To celebrate and for a team social, our team went to the i360 in Brighton. I have never been so terrified in a long time. I have a strong dislike for heights, but my fellow team members did a stellar job of distracting me on the way up and I actually had the best time once we were up in the air!

IMG_20180215_161504IMG_20180215_161149IMG_20180215_161300IMG_20180215_161241IMG_20180215_161221IMG_20180215_162142IMG_20180215_161953

First day as a Junior Developer

So I have just had my first day as a Junior Software Developer, and it surpassed all expectations! This is a run-down of how the day went:

  • 9:30am start – given a quick tour of the office, shown to my desk
  • HR chat about the usual admin related things that need to be spoken about when you’re starting at a new place of work
  • Met my team: I work alongside 6 other developers of varying experience, they were all so lovely and welcoming!
  • Inductions: I have around 14 induction sessions (no joke) with members of each team in the company. To begin with I had a chat with my line manager about the company values, expectations and an outline of my probation targets. I found this meeting so valuable, as it allowed me to see how I fit into the company and their expectations of me. I also felt incredibly supported – obviously the company needs me to meet targets, they are a business after all! But they also care about my personal growth, training and aspirations too.
  • Start working! So to begin with I am shadowing the current Junior on the team, he is showing me the ropes and helping me get my computer set up with the software and sites i’ll be using on a daily basis. He then assigns me some ‘easy’ tickets to start with – ‘easy’ for me meant a couple of hours looking into documentation and looking on Google to work out how this part of the software works and therefore how I can change it to meet the clients request.
  • Lunch! Our break room has the comfiest sofas, a table-football table and (when it’s sunny) gorgeous views over the gardens in the center of Brighton. We are located so centrally that the shops and parks are located just a few minutes walk away.
  • Back to work! I carry on working on the tickets I was assigned before.
  • Training: As a team we have weekly training sessions where we go through a group of videos on Pluralsight, learning about a particular development skill or language. As we are watching these as a team, we can pause and ask questions about the material to help eachother with learning. Pluralsight is a great learning resource for web development!
  • Finish at 6pm

Everything I had heard about tech companies in Brighton is true. They are all such vibrant, inspiring places to work and are filled with people who feel genuinely appreciated for the work they do. I cant wait to see how my career pans out here!

Junior Software Developer

THE most incredible thing happened.. I got a job!! As the title of this blog post suggests, I am now officially a Junior Software Developer for a company in Brighton called Madgex. They make job board software for various huge names in the recruitment industry including The Guardian, Telegraph, Washington Post amongst many others.

The offer came as a huge surprise to me and my student advisers at The Learning People and Code Institute. The ‘pathway’ students on my course usually take is to complete all three modules, and then use the portfolio of work to go on to apply for jobs. One day whilst I was on a catch-up call with my adviser Stuart, he mentioned that I could technically start applying for junior roles now but obviously it would be a lot harder than if I waited until the end of the course. The natural curiosity in me was piqued – so I started looking for junior developer roles. The first job I stumbled across was for a Software developer at Madgex. Reading down the job description it immediately became clear that they needed someone with experience and technical know-how, something I was lacking at this time. However, I did not let this put me off. Reading about the amazing company ethos and awards for being in the Top 100 places to work in the UK (they came 20th!), I was determined to see whether they would take me on as a trainee developer.

They say if you don’t ask, you don’t get – well my application was the living embodiment of this. I emailed their HR department with a CV and a very transparent introduction explaining that I was new in this field and looking for training, and that I find training on-the-job to be the most immersive form of learning. To my amazement I was offered a telephone interview for a few days later.

After a successful telephone interview I was invited in for a face-to-face interview, with a technical test. I was petrified. Not only was I an inexperienced coder, but I had to learn two completely new coding languages that I hadn’t seen before – in one week. Needless to say the technical test didn’t go so well, but the interview panel liked my personality enough that they invited me back for a second technical test, but with more time to learn the material. Essentially they wanted to see what I could learn in a given time frame. Thankfully this second test went wonderfully, and proved that I would be able to pick up new information quickly. I was offered the job two days later!

I am so very grateful for the opportunity to train with such a talented group of developers – I am going to become a sponge in the next few months to soak up all the knowledge I can! I officially start at the end of this month, so I will be writing posts about my experience of starting off in the tech world as both a newbie and a female coder.

My Background

So I’ve been studying with the Code Institute for about 6 weeks now, and I’m thoroughly enjoying it! It’s so exciting to make websites and apps that I’m proud of and want to show off to everyone.

I come from a scientific background originally – I studied Natural Sciences at university and went on to become a Biology Technician in a college. Whilst I LOVE science and am still a major nerd, I found myself becoming less and less satisfied with my career progress. It was by chance that I stumbled upon coding, having a curiosity for it a few years ago but too intimidated to start! But once I gave it a go, I was instantly hooked. Furthermore, a career in coding is one that provides good prospects for career progression and is a constantly evolving field. My course with Code Institute will train me to be a Full Stack Web Developer, which will equip me with the skills to make a website, and make the database that runs it. A jack-of-all-trades as it were! Hopefully this will stand me in good stead when the time comes to apply for jobs!