# FAC talk 08.05.2021 ![cat](https://media.giphy.com/media/VbnUQpnihPSIgIXuZv/giphy.gif) --- ## About Me --- ## Studied Biology with Psychology ![gif](https://media.giphy.com/media/l41m04gr7tRet7Uas/giphy.gif) --- ## Then worked in Pharmacy ![gif](https://media.giphy.com/media/1hMk9kzfH3rPrmzVkp/giphy.gif) --- ## Now work as a Consultant Software Developer ![cat](https://media.giphy.com/media/l44Qqz6gO6JiVV3pu/giphy.gif) --- ## And right now... - Giving you this talk! --- # Disclaimer - Please don't let this talk be daunting! - Even I don't follow all this advice - Take it with a pinch of salt - Only based on my experiences --- 1. Getting ready to apply for jobs 2. Working as a developer 3. The future --- # Step One ## Get experience --- ## Projects are important - Main bit since limited professional experience - What talk about in interviews - 1-2 Projects to showcase - One could be your portfolio --- ## README - Intro: what project is about - Links to where can access it - Badges: build status / testing - Screenshots and videos (giphy) - Split into features - Markdown: use tables - Tech Stack/Framework used - Split into FE / BE --- ## README - Developer instructions - How to install - How to run project - How to run tests - Who are contributers - Roles - Link to gitHub profile - Extra - More info on how designed / product research - Folder structure --- ## Project Code - Good folder structure - Eslint / Prettier - Readable code - ES6 - Tests (end to end / integration /unit) - TDD: Test Driven Development --- ## Project Code - Error handling - Don't just catch errors and console.log them - Notify the user - Use: <ErrorBoundary></ErrorBoundary> (React) --- ## Project Code - Security - No sensitive information (e.g. username/password) passed to BE using cookies / url - Hash data (e.g. passwords) - GDPR privacy laws - User can delete all information --- ## Project on Github - Commit messages are good (short / point) - Pull requests made - good descriptions - Evidence of code review - Small number branches - Good workflow - Use issues (labels / assign) - Git: milestones / Kanban boards --- ## Project on Github - Contributors equal ![](https://i.imgur.com/XNbrnlk.png) --- ## Running the code - Easy to run - just one script - Make sure it runs - Ensure no errors or warnings in the console --- ## Make site accessibile - Accessibility - HTML elements heirarchy - Good rating from audit ![](https://i.imgur.com/Ku6HMhj.png) --- ![](https://media.giphy.com/media/kgstbSQvwvNxLjBfsP/giphy.gif) --- ## Stand out - Attend Hackathons - https://www.meetup.com/UK-Hackathons-and-Jams - Couple of days scoping then code together - Online/remote ones (e.g. https://womendrivendev.org/ukvscovid19) - Together or with new people - Contribute to open source projects - Giving back to the community - Jobs --- ## Stand out - Mentor others - Codebar, FAC - Document new learnings - Post on Twitter / Github .md --- # Step Two ## Advertise yourself to employers --- ![](https://i.imgur.com/K0jKXIr.png) --- ## CV - 1-2 pages - 1-2 Projects - Link to them - Contact details - Experience - Other (mentor/volunteer) - Tech Stack - Check spelling etc --- ## Projects on CV - Largest section - Brief summary on aim/what about - Timeframe - Team (number of people) - How worked (paired / Agile) - Personal contributions (e.g. specific role?) --- ## LinkedIn ![](https://i.imgur.com/WOCAoHs.png) --- ## LinkedIn - Recommend each other - Endorse skills on each other's profiles ![](https://i.imgur.com/PjQ9V4e.png) --- ## Twitter ![](https://i.imgur.com/zmEJJIb.png) --- ## Twitter ![](https://i.imgur.com/WxpgUir.png) --- ## Meeting recruitors - Conferences - https://diversitytickets.org/en - Networking in meetups - Sicilon roundabout - https://www.siliconmilkroundabout.com/ - Hackathons - Contact company directly --- # Step Three ## Getting a job --- ## What are your preferences? - Big vs small - Startup vs not - Well known company? - Front end / Back end / Full Stack - Company culture - How technical are higher-ups? - Agile? --- ## Interview Process 1. Informal phone call / meeting - Exchange details 2. Technical Test 3. (Visit in the office) - Another tech test? (Paired programming) 4. Interview --- ## Technical Test - Do it at home - Small project already set up - Series of tasks need to complete - Within a time frame - E.g. 2 hours --- ## Technical Test - Looking at your code - How work (commit messages etc) - How prioritise work - Be honest with your times (x hours to set up etc) --- ## Technical Test - Is reflective of the company --- ## Preparing for a Tech Test - Practice online - Companies can post online - https://kata-log.rocks/ - Codewars - MDN Documentation - Array methods - Algorithms / Data structures - Hackerrank, TopCoder, CS50 --- ## Preparing for an Interview - Research the company - Always have 3-4 questions to ask them - Basic technical questions - Cracking the Coding Interview book - Generic interview preparation --- ## At the Interview - Focus on talking about your projects - Know why chose frameworks - Basic technical questions - e.g. What is a closure - Whiteboard simple tasks (e.g. invert) - Let them give the number & then negotiate --- ![](https://media.giphy.com/media/KYElw07kzDspaBOwf9/giphy.gif) --- ## Working as a Developer --- ## Starting out - Can take a while to set up the project - Expect to read lots of code ![](https://media.giphy.com/media/xT9IgzoKnwFNmISR8I/giphy.gif) --- - Expect not to understand lots of code ![](https://media.giphy.com/media/xT0xeuOy2Fcl9vDGiA/giphy.gif) --- - Experiment locally - Break things - Learn how things interact - Try to understand the code --- - Ask lots of questions - There are no stupid questions! --- ## Imposter Syndrome - Most people in tech industry experience at one point - Feel like you were hired by mistake - Remember you were not! - Colleagues are there to help --- ## Writing code - Find other places in codebase achieved same thing - See if there are any util functions you can use - Or look for examples online - Read framework documentation --- ## You will get frustrated ![](https://media.giphy.com/media/L4AQvif7x9fS8/giphy.gif) --- ## You will get frustrated - Part of programming - Ask for help - Can ask to pair programme --- ## Breaking things - Sometimes you can introduce bugs - Everyone does at some point - How company responds - Good test of company process - Bugfixing skills --- ![](https://media.giphy.com/media/pJu3xzRa2PzTq/giphy.gif) --- ![](https://media.giphy.com/media/osjgQPWRx3cac/giphy.gif) ## Any questions?
{"metaMigratedAt":"2023-06-15T07:55:45.857Z","metaMigratedFrom":"Content","title":"FAC talk 08.05.2021","breaks":true,"contributors":"[{\"id\":\"b9886dc1-a4e4-41ec-9e95-b05d5f839378\",\"add\":9110,\"del\":2166}]"}
    191 views