5

How to learn other technologies, or learn a new domain say ML for eg. while preparing for interviews?

Profile picture
Mid-Level Software Engineer at Nike2 years ago

I find myself in this confusion as to how and when should I spend time in

  1. Interview prep for FAANG or alike(I usually spend 2-3 hours everyday 7 days a week). This includes system design prep too.
  2. Learning more about technologies such as and not limited to say kubernetes, new AWS services or preparing for AWS certification? or Docker etc.
  3. Learning about ML, or say web 3 etc.

How should one spend time in making sure they are doing deliberate practice for the interviews, but also are in "sync" with the market with all the new tools and technologies out there? Where does one stop? I know my priorities, but I also feel i might loose focus on my interview prep if I start multitasking.

How do senior engineers or mid-level engineers keep themselves uptodate? or do they only learn "whatever is required to get my job done"?

253
6

Discussion

(6 comments)
  • 5
    Profile picture
    Founder
    2 years ago

    Without focus, you cannot do anything effectively.

    If you are preparing for interviews, then do just that. But have a deadline to join a new company. You cannot prepare for interviews all the time. After 2 to 3 months of interview prep and actual interviews, you should be free to do other things like you 2) and 3). I met some people who are always in interview preparation mode and never get anywhere. Don't be that person.

    After you have joined a new company, the best case scenario is that you work on a project for the company that needs AWS, docker, Kubernetes, ML or (put your buzzword here) and you will do the learning and get paid as well. But this does not happen all the time.

    There would be cases where you think your work project doesn't have the opportunity to learn about new technologies. Here many people miss out. There are many times opportunities to improve the CI/CD, build process, and better tooling.

  • 4
    Profile picture
    Meta, Pinterest, Kosei
    2 years ago

    Agree with Touseef -- if you're interviewing, make that the focus. If you're learning a new technology, make that the focus.

    The way most engineers stay up to date:

    • Talk to other engineers (casual conversation with coworkers, attending conferences, etc)
    • Do side projects
    • Read wikis/docs within the company to understand what's happening
  • 4
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    2 years ago

    I think Touseef pretty much nailed it. Interview prep is something that should be treated with intense focus, especially if you already have them lined up. That being said, a common trap I've seen is people grinding Leetcode and not realizing they can't even get the interview to begin with. I recommend checking out this lengthy discussion that goes through this more in-depth.

    Things are more interesting when you don't have a lot of interviews or don't have any FAANG-level ones: In that case, you can split your time between interview prep and building side projects for learning. I talk about this in-depth here.

    A common trap I've seen among mid-level engineers that holds them back from senior is that they aren't able to find additional scope among the work they're already doing. Here's a good thread around creating scope (from a mid-level engineer at Apple).

    How do senior engineers or mid-level engineers keep themselves uptodate? or do they only learn "whatever is required to get my job done"?

    I actually would push back against this mentality of needing to stay "up to date", especially if your goal is FAANG. The pressure to keep up with the latest framework is a trend I see among weaker software engineers who are more "commodity coders". The best software engineers (many of whom are at FAANG), are building up universally applicable fundamental skills, which manifest more as behaviors rather than knowledge.

    If you really want to stay up-to-date though and can't do so at work, just build side projects.

  • 3
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    2 years ago

    I do understand that each individual might have different approaches to learning things, and figuring out what they want out of it, but labeling some folks as "commodity coders" doesn't seem right to me :)

    This is a fair take - I agree that it's a pretty loaded term. This is more so with folks who go on the extreme end of the spectrum and directly and solely correlate career progression to keeping up with trends.

    I'm glad you're able to get the top-shelf interviews, have good scope at your current job, and feel like you're making good progress building up fundamentals skills (it seems like the world is truly your oyster at this point). At the end of the day, I just want software engineers to be fulfilled in their careers. Appreciate your understanding response as well and happy holidays! 🥳

  • 2
    Profile picture
    Mid-Level Software Engineer [OP]
    Nike
    2 years ago

    Thank you so much @Touseef and @Rahul! Will focus on prep with a timeline. Thank you

  • 2
    Profile picture
    Mid-Level Software Engineer [OP]
    Nike
    2 years ago

    Thank you @Alex for your comment. I really appreciate the deep insight you provide. But, I have some additions to some of your comments as follows

    "That being said, a common trap I've seen is people grinding Leetcode and not realizing they can't even get the interview to begin with" --> I do not have issues in getting interviews from FAANG/FAANG alike companies. It is just these thoughts time and again creep in my stupid head, and keep me thinking, hence thought of reaching out, and asking members here :) But, I really appreciate your inputs on this.

    "they aren't able to find additional scope among the work they're already doing" -> I also think the work I am doing has the correct amount of scope to get me promoted in my org, but whether I get a promotion or not in my current company is not something I want to focus on right now.Though it would be really great, it is not something that is affecting me to getting/working on impactful projects.

    Lastly, I do not think I lack(sure I could improve upon) skills such as communication, being empathetic, compassionate etc. in my day to day job, but I also think IMHO there isn't anything "bad" or "taboo" in folks (for the better part) thinking about learning the next-hot-thing in the market, I also consider this to be "getting to know my colleagues" if such sort of a discussion can help me in networking, why not right?

    I do understand that each individual might have different approaches to learning things, and figuring out what they want out of it, but labeling some folks as "commodity coders" doesn't seem right to me :) to each their own.

    But, thank you very much for your insights, and patience in answering my question.

Nike is an American multinational corporation that is engaged in the design, development, manufacturing, and worldwide marketing and sales of footwear, apparel, equipment, accessories, and services. The company is headquartered near Beaverton, Oregon, in the Portland metropolitan area.
Nike1 question