Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

18 months into my development as a front end developer

  • 08-03-2022 09:20PM
    #1
    Registered Users, Registered Users 2 Posts: 4,687 ✭✭✭


    Hi guys,

    Currently in a job I enjoy(not software related) but would like to have some options in case I was made redundant, I have a degree in computer engineering from 2005 but barely remember anything from it.

    Got some advice from the good people on here and front end developer was mentioned as a good option to aim for.

    I started off reading "Head First HTML and CSS" and then "Head First Javascript", found them a bit of a slog but got through them.

    Finally I did this udemy course from The Net Ninja (Shaun Pelling)

    "Build Web Apps with React and Firebase"

    This was by far the best material I studied, I took my time as there was a lot covered i.e. Hooks, Context, State, Reducers, the React Router & Firebase.

    I wouldn't say I know the material of the course backwards but I think a have a good understanding of the topics.

    As you can see progress is pretty slow, have two young kids so hard to find the time.

    I was thinking about doing a course on CSS next as my knowledge there is pretty limited, anyone got any advice on where to go next to build up my knowledge?



Comments

  • Registered Users, Registered Users 2 Posts: 1,206 ✭✭✭zig


    I think you are better off spending your time on projects if you are very serious about wanting a job in it if you're own job goes.

    Doing courses is fine and great for understanding concepts but if you're looking for any job people will want to see some code and the kind of things you've worked on. It will be complimented by what you've learned from the courses. Also, if you're into coding it will be more enjoyable than books or courses.

    A React course is a great start but I think your next step should be to try build a project with that knowledge, and then another one and another one, even better and bigger and more complex. I would also stick to React (unless you cant stand it).

    You could keep working on it and position yourself for an entry level job at some stage.

    I think the fact that you like your job probably isnt helping (as strange as that sounds). Unless you are naturally really enjoying coding I am not sure how you'll be motivated to get really into it to a point that it makes you employable. Doing your own projects will give you that answer I feel.

    Best of luck!



  • Registered Users, Registered Users 2 Posts: 4,687 ✭✭✭enfant terrible


    Thanks for the reply zig.

    Yes I think you're right just doing courses is probably the easy thing to do.

    Doing a project on your own from scratch is a more challenging task.

    Couple of questions, as a front end developer do you need to be just as proficient at CSS compared to the more functional side of React?

    Or can you more specialize more in the JavaScript side and have a basic knowledge of the design side?

    Also any tips on what direction to head with coming up with a project to create?



  • Registered Users, Registered Users 2 Posts: 1,206 ✭✭✭zig


    I would say you would always need CSS/SCSS, I mean specifically if you're talking about front end dev. However to be honest I wouldnt go learning that just for the sake of it.

    The classic simple project to start with is a To Do list, maybe after that you could build a little management system for your household (just a random idea as you mentioned having 2 kids). I would definitely try do stuff you might be interested in (those ideas might be miles off).

    Overall, I wouldnt worry too much about what you should and shouldnt be proficient at at this stage, its more important that you're coding and enjoying it (courses wont give you a good indicator of that if my experience is anything to go by). A good sign will be that you are stuck on problems and getting deeply lost in trying to solve them , either by referring to docs or just seeing how others solved it on Stackoverflow etc, you will naturally want to finish the projects, or at least solve the problems that are coming up in them.

    But also you might find you're more into one thing than another e.g. if you find yourself lost in services or applications like Firebase but not quite loving the code maybe its not a software dev role that might suit, but dev ops or something else. Or perhaps you'll love all the visual side, html/css/js/animations and even find yourself leaning closer to a web developer or even design or UX role. I know its vague advice to say you have to enjoy it, but you really do if you want to become good enough to be able to be a serious consideration for a job, its the only way you'll be able to stay motivated to learn.



  • Registered Users, Registered Users 2 Posts: 4,687 ✭✭✭enfant terrible


    Thanks again zig.

    Think I did the To Do list in the Head First Javascript book along with a Calculator, Battleship game and others.

    Yesterday I tried to do the To Do list in React and found it was trickier than I thought i.e editing a To Do, so was well worth doing.

    Was watching a youtube video that recomended doing projects that would add value to potential employers so looking into that now.



  • Registered Users, Registered Users 2 Posts: 4,687 ✭✭✭enfant terrible


    Hi guys still plugging away at work and in my spare time.

    Created a couple of projects which you can view here

    https://nicholasoconnor.netlify.app/#projects

    My wife has a balloon business so I decided that was a good direction as any to go in.

    For the first project I used the React library to create my application.

    React Router for handling my client side routing and building my Single Page Application.

    I used Tailwind as my CSS framework and and the component library DaisyUI.

    For the second project I wanted to get experience using the Next.js framework and also used Typescript for the same reason.

    I used Clerk for authentication and Shadcn UI for creating interfaces.

    To host my data/database on the cloud I used Supabase and Stripe to accept payments and Prisma to simplify database access.

    Also finished a course on data structures and algorithms.

    Anybody got any advice on where you would go from here?

    Looking in my area Limerick most requirements seem to be C# with .net but I suppose that could change in time.

    Should I go down that alley or possibly concentrate on the backend more, was thinking of studying MySQL and the backend framework Express.js.

    Thanks Nick



  • Advertisement
  • Registered Users, Registered Users 2 Posts: 671 ✭✭✭Johnny Jukebox


    I'd recommend you evaluate the Flutter ecosystem for FE development. To me, this seems revolutionary as you can have a single code base for mobile, web and desktop. Its backed by Google.



  • Registered Users, Registered Users 2 Posts: 7,940 ✭✭✭The_B_Man


    I'm working with flutter on my current project. Mobile and web. It's revolutionary but you don't get that revolution for free. There are definite trade-offs, especially on Flutter web. Don't think of it as a website, rather an app displayed in a browser. Displaying html and javascript is overly complicated. There's no proper webview package on web. On mobile it's actually easier to display web content than on flutter web since ios and Android have their own webview implementation embedded in the OS.

    Tbh its not something I'd ever consider as a natural next step for a front-end developer. I'd recommend react native before flutter, despite flutter being my preferred of those two.

    OP, why are you not considering sticking with typescript? I thought that was popular these days. You can make full stack apps with express.js, which is valuable. Not sure about Limerick but here in Dublin I've seen jobs for it.

    Although if you're looking for your first job, I'd also consider learning whatever you see the most jobs for. No point spending time learning something that there's no jobs for, just coz you like it better.

    Although here's a good one: https://www.irishjobs.ie/job/software-developer/cregg-group-job104420198

    Re: the portfolio, replace the lorem ipsum and make sure all links work on the site (eg About Page). Otherwise, good start!



  • Registered Users, Registered Users 2 Posts: 4,687 ✭✭✭enfant terrible


    Cheers lads,

    Not really sure about where to go next especially with the way the job market is now and the threat of AI.



  • Registered Users, Registered Users 2 Posts: 7,940 ✭✭✭The_B_Man


    We hired a mobile dev last week from Pakistan. We gave him a tech test. Very basic. It was all done with AI. Against my recommendation, they hired him coz he was so cheap. I gave him a task similar to the interview test and he asked to be moved to another task coz he couldn't do it. I'm guessing the AI didn't understand our code well enough, and he didn't understand it enough, either, to prompt the AI properly.

    So i gave him another task. Simple enough and he struggled a bit. Told him an easier way to do it and he completed the task. I could tell the code was AI generated. Anyway, i rejected his pull request after testing his changes. Not only was it buggy, but it broke something else that was working before.

    AI is a threat in the hands of good devs. You should be more worried about being replaced by cheap labour tbh. Either way, both will result in buggy code!



  • Moderators, Computer Games Moderators, Social & Fun Moderators Posts: 81,132 Mod ✭✭✭✭Sephiroth_dude


    Just wondering, how could you tell it was AI generated? was it just bad code?



  • Advertisement
  • Registered Users, Registered Users 2 Posts: 7,940 ✭✭✭The_B_Man


    No the code was too clean.

    Flutter changed certain things in recent versions. AI was trained on the old way of doing things. For example, a default constructor passing a key is the new way. AI does it without the constructor, which gives an IDE warning. Same for not using "const" before widgets that won't change. Then you have the comments, which are perfect formal English, along with other comment suggestions like "//You can also throw an Exception here".

    Hand written code is usually messier, especially for certain skill levels, as well. When you see the code and talk to them, then it's usually obvious. But the comments are a dead giveaway.



  • Registered Users, Registered Users 2 Posts: 4,687 ✭✭✭enfant terrible


    What are tech tests like here.

    As I said I did a data structures and algorithms course.

    It covered thinks like queues, stacks, linked lists and binary search trees.

    Are you likely to be asked if a linked list contains a certain value or to implement breath first search on a binary search tree?



  • Registered Users, Registered Users 2 Posts: 7,940 ✭✭✭The_B_Man


    I've never had to do a tech test like that. Apparently the big tech companies ask that sort of crap. Most normal companies will ask you to make a small project. Like for a web developer, they might ask you to implement a blog with admin and user roles, and allow comments on blog posts. This is just to see how you structure your code, like what architecture you use and is it testable. But if you're applying for a role in some online shop for example, they might ask you to make a small shop and implement stripe payments or PayPal or something.

    On the mobile side, it could be something like making a sample app that uses some open API, like TMDB (like IMDB) and display it nicely on a UI. I've done one before where they gave me a test API key and asked me to use one of their own APIs and display data.

    They seem to he more practical here. In saying that, I hate them and i personally know people who flat out refused to do one.



  • Registered Users, Registered Users 2 Posts: 4,687 ✭✭✭enfant terrible


    If you make it past the tech test, is a face to face interview next?

    What would be asked there for say a web developer?

    Questions on the library they use say React, you might be asked about JSX, components, state, hooks etc?

    General programming questions? difference between = and ===

    Stuff like that?



  • Registered Users, Registered Users 2 Posts: 7,940 ✭✭✭The_B_Man


    Each company is different but for cases where there's a tech test, you'll typically have an initial screening call. This can be with a tech person to make sure you're suitable for the role. Or at least talk like someone who is. If you pass that then they'll ask for the tech test. You'll have a week to do that and the most important thing is to read the instructions. It's not necessarily a requirement to complete it because they'll be looking at how you structure your code. After submission, different companies do different things. Some just reject or progress you to a final round (more tech people and/or HR screen, although HR can be step 1 in some cases), other companies will want to discuss your code and pick your brain about it before progressing you. This is just to make sure you wrote it yourself and understand it because its what you're being judged on really.

    Since covid, most interviews are video calls. But that's my experience, not a rule or guarantee.

    For a more junior role, you might be asked the difference between the double and triple equals. If the interviewer is trying to catch u out, then they're gobshites so the questions should be straight forward. They should just ask what libraries/components you used, how long you used them for etc. The interview should just be to make sure you have the minimum required knowledge for the role. A junior can be caught out easily by a senior but I'd only expect one of those tricky questions if you're doing exceptionally well and they want to push to see your ceiling. Another thing i remember doing as a junior was logic tests. For example they'll give you a picture of an odd shaped cake and ask you how you'd ensure its cut exactly in half. The answer being that you cut horizontally. Then there's the famous Microsoft one about dropping a watermelon from a skyscraper, which is a thinly veiled sorting algorithm.

    But ultimately they just want to see if you can do the job or, more specifically, you can do it better than the other interviewees! You can google specific interview questions. There's loads of websites that give sample questions and answers that you can study beforehand but really i just ask how long you've been doing something and see if you can talk about it confidently. If you miss a lot of stuff and don't know why you did things the way you did, then that would be a red flag, unless its a junior role. Like if you know your stuff, you'll be able to talk about it, and you get to know your stuff by just putting in the time. There's no real shortcuts.



Advertisement