Taro Logo
2

How do I balance between using AI tools and developing my software engineering skills?

Profile picture
Mid-Level Software Engineer [E4] at Meta6 days ago

I recently started a new position as a mid-level software engineer at Meta. This is my first time ever working for a FAANG company, and my first software engineering job working with a huge codebase and distributed teams.

I've been experimenting with Metamate (Meta’s internal AI coding assistant embedded in VSCode), and it's been helpful in navigating the codebase. For example, it can quickly identify file references, generate small code snippets, and even suggest or run unit tests. It’s not always perfect, but it definitely speeds things up.

My concern is: by relying on it, am I missing out on developing core engineering skills? For example:

  • Should I be learning how to trace file dependencies manually?
  • Am I skipping over valuable lessons when I let the tool handle test writing or code suggestions?

I want to get promoted to E5, so I really want to focus on improving my technical depth. But I’m not sure if relying on tools like Metamate will slow that down or speed that up. Could really use some advice!

59
2

Discussion

(2 comments)
  • 3
    Profile picture
    5 days ago

    You should absolutely be using AI as much as possible. In my opinion, if you're not learning to code for the first time using AI rarely hurts your growth

    In fact using AI has helped me learn 10x faster. So many times when I see the AI do stuff and I'm like wow I had no idea I could do X,Y,Z

    In my opinion in this age it's incredibly important to know how to use AI to 10x your velocity for the simple reason that your time is limited, but the AI's time spent writing code is infinite. So knowing how to best use AI will pay off huge. I also think there's a fundamental shift people need to learn to how to best use AI.

    The most common failure mode I see is people trying to get the AI to work for you instead of trying to change your workflow to work with what the AI is best at - for the simple reason that AI is getting better and better and time spent running AI has no upper bound


    Given that I still think it's important to use AI to 10x your learning. When the AI outputs something make sure to ask it, why did you do that? how does that work? how does it handle XYZ use case. Dont just take the output and run with it. Actually drill deeper.

    By doing this I've accelerated my learning so much


    I also found taking the courses on debugging/coding and accelerating that process with AI to be super helpful. A lot of the stuff in Taro debugging is your approach. It's not exactly "hard skills" but the mentality around it. I've used those lessons from Taro to change my mindset around how I debug and instead of manually doing it I just ask an AI to do it.


    The caveat I'll say is a lot of it depends on the underlying LLM. I am not sure about the quality of Meta's LLMs but I am guessing its not as good as using cursor + sota models.

    Here are some excellent guides on how to get started with using AI: https://docs.cursor.com/guides/advanced/large-codebases

  • 1
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    a day ago

    Good question! Instead of viewing growth/learning and AI as mutually exclusive, I would view them as something that can be interwoven together harmoniously if you put in the work. You should definitely be using AI to boost your productivity (you're going to need it at Meta, especially if it's your first Big Tech), just make sure to be curious and never copy-paste in code that you don't fully understand. In other words, treat it as a human mentor that you responsibly interact with. More thoughts here: "How to optimally use GenAI to leverage my coding prowess and become a better software engineer?"

    I highly recommend the onboarding course as well if you haven't taken it already: The Complete Onboarding Guide For Software Engineers