Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Struggling to make progress at my internship
2 points by roboticsGuy on April 15, 2021 | hide | past | favorite | 7 comments
Hey HN! I'm a robotics intern working in a Fortune 50 company. The project that I work on is great, I really enjoy the problem statement anr it's been my life's mission to work in robotics.

I'm 3 months into this internship and I'm struggling to make meaningful progress on the parts that I'm supposed to be working on. I find the topic technically challenging and so far I've been powering through it with blunt force, a prayer and crossed fingers.

My question is, how do I get better at this? How do I keep my head above water and succeed at this very valuable experience? I'd appreciate any pointers, personal recollections and advice.

Thanks a ton HN!




I would highly recommend focusing more on the relationships you can build working for a massively successful company like this rather than the fear of failing or making slow progress on your assigned task. The reality is that as a developer in a burgeoning field Complex Progress takes Massive Time investments.

Build real relationships where you are at so that you have something to stand on when you venture out on your own.

Plus if you have people in your corner you are less likely to get fired if you fail to accomplish a task up to par. I definitely am not saying to be a kiss ass but instead to find meaningful valuable relationships with mentors and partners so that you can build a life of your dreams, and not just look at the opportunity as a job.

Blessings in your endeavours, keep praying.


Thank you for your advice! Yes, I am trying to build relationships with my colleagues. I can't believe how smart some of them are, having massively contributed to tech that almost all of us use each day.

I'm definitely not battling with my colleagues or mentors. I sincerely believe that I will need their help in the future, even beyond this experience.

Thank you for your advice and your insights! I appreciate it a lot.


Is there anyone at the company you could talk to about your struggles?


I think I can talk to my technical manager about it.

The thing is this is my first time working in a corporate setting. I come from an academia background where bottling up technical challenges in your projects was the norm.

I'd love some pointers on how to talk about these issues with my manager.

Thanks again!


Have you discussed your challenges with your mentor?


Not really. I think part of it is how distant it feels to have these conversations now that we're all working remotely. In my previous experience, I would discuss technical challenges with colleagues during lunch or breaks but now our interactions are limited to pure work related matters throttled to about 30 minute discussions on teams.

I'd love some advice on this end. This is the first time I'm working in a corporate setting (having previously worked purely in academia), and would appreciate any pointers on how one approaches their mentor.

Thank you once again!


Don't give up. Be patient. You got this. Keep going.

When I first read this post, I thought it might have come from the guy I am mentoring. I actually linked him the post and he said that it's unnerving how this post totally reflects himself.

I am writing this for both you and him.

Do you remember learning how to drive? Remember how the instructor would point things out to you that you didn't even notice? "Watch out for that car", "you are drifting to close to the right", "you are going over the speed limit", "it's your turn to go" etc etc.

If you have driven for a few years you can now go on auto-pilot. Somedays you might wonder, how did I even get to my house? You remember getting into the car and presto you are now at your house.

You are experiencing the same thing with your work. Three months in an internship is nothing. It's an hour of driving practice. Even after 10 years there are still things that will trip you up. New technologies that you don't understand. Or worse depth in technologies you do understand and use daily that you still don't grasp. Hint: This is a good thing, and it will happen to your for your entire career, otherwise it means you have stopped growing.

I have some good news for you though. You really enjoy what you do, you find it interesting. Do you realize how rare that is? Depending on the statistics you look at 45-85% of people dislike their jobs. Welcome to the 20%.

So now let's discuss the source of your angst. It's hard. There are so many things you don't understand, code that makes no sense, and the silent killer...you are no longer as smart as you thought you were because you are surrounded by really smart people.

You know what used to get me? I would spend five days working on something. Flustered, angry and disappointed I would talk to a Sr Dev trying to explain why the thing I was trying to do wasn't working, and in the middle of explaining the problem he would give me an answer that not only dealt with my problem, but it was simpler, more elegant and had none of the implementation issues I was facing. There is nothing more soul crushing than deleting 150 lines of code that doesn't work, to replace them with 3 lines of code that works perfectly. That keen awareness that if they were working on your story, they would be done in 5 minutes, not 5 days. It's instances like that, that the whole 10x developer ideas comes from.

That pain is learning. Part of what we do is learning how to think effectively. You need experience to do that. You need to get stuck. To see the simpler implementation that is so much better. To see better code and marvel at its beauty. The same way reading about driving doesn't really teach you to drive, college / personal code projects are not the same as writing code for a company, especially a well established one.

Nowadays, I am on the other side. Ironically, it's the same. If nothing else, it's more complicated. My decisions now have a wider range of effect. I have to mitigate more effectively. I think both long and short term strategy. So what you learn now, will apply forever.

So here are my tips:

1. Chunk your work into smaller chunks. Create an outline of what you want to do. There is a certain art into this but essentially you want to stop the overwhelm of vagueness. When in doubt smaller chunks are better.

Ex. We create blue and red widgets. roboticsGuy create purple widgets too

...chunking time

Figure out where the widget code is

Understand what the widget is

Where is the color blue vs red being defined

Create a branch

Add purple definition

Test

Ask for a Code Review

Merge it

Then you go through your list one by one. Make notes, be it handwritten, in a document it doesn't matter.

2. Bug Sr Devs, another intern, people on the street with questions. Worse case scenario you might have to wait for them to respond. In reality I have found that most people like helping. It feels weird to ask for help, especially when it's the 15th time you have a question on the same day. So gather all your questions and ask them at the same time. Don't be afraid to ask questions. If you feel judged don't dwell on it. We have all been there, we understand. If you end up talking to someone condescending find someone else. In the end you are an intern, the whole point is for you to learn. So ask away. Hint: If someone is rude to you, find someone else.

3. Learn how to think. When talking to people you look up to, figure out how they think. There is no right way to think, but there are some good paths to follow. I can write an entire thesis on this, but essentially there are depth first people (one thing, keep digging down), breadth first people (multiple things, layer by layer investigate all of them), inverse people (what don't I want?) and then there are neural network thinkers which I totally don't relate to, but serve an important function. Now hopefully someone's thinking style will match yours. Talk to those people a lot, they will be able to explain things in a way you can parse it.

4. Be honest, but not too honest. It's OK to say "hey I don't understand how a widget ends up being blue or red, where does color get defined?". It's not OK to say "I don't get this". It's too general. Think of it like asking Stackoverlow a question. You need to show that you did the work, some work and you are stuck. Stackoverflow reflects a lot of tech people's perceptions. "I don't get this" shows laziness. No one likes lazy people. But who do we like? We like people that try hard. So try hard. Can you show someone three attempts on widget color making that all failed? That's what you want.

5. Take strategic breaks. Sometimes the best code is written away from the computer. Go for a walk. Do some yoga. Read a book on an unrelated subject. I find that physically moving away from the computer helps me. I still remember one time that I couldn't solve something, and I literary walked around my work building for an hour, then went got food for myself, and sat back on my computer and wrote 5 lines of code that solved all my problems.

6. Start even when you are not motivated. This relates to chunking, in a way. Sometimes the thing you have to do is so vague, you need to break it down. Other times you have a step and you still don't know how to tackle it. Try to work on it for 5 minutes. Hell, just click around see what happens.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: