Get a Software Engineer Intern Return Offer

Sarah Li
21 Mar 202413:19

Summary

TLDRThis video offers valuable advice for excelling in a software engineering internship and securing a return offer. Key recommendations include mastering coding, testing, and Git, as well as understanding databases. The speaker emphasizes the importance of documentation for self-evaluation and performance reviews, seeking consistent feedback, and asking the right questions. Additionally, they suggest creating a design document for projects, networking, and being a positive team player. The video concludes with personal feedback received by the speaker during their internships, highlighting the importance of communication, initiative, and confidence.

Takeaways

  • 💻 **Coding Skills**: Strengthen your coding abilities, including bug handling and understanding unfamiliar code.
  • 🔍 **Testing and APIs**: Gain experience in writing tests and working with APIs to enhance your software development toolkit.
  • 📚 **Educational Courses**: Enroll in software development courses to learn about the software life cycle and test-driven design.
  • 💾 **Database Knowledge**: Familiarize yourself with relational databases to understand querying and data management.
  • 📝 **Git Proficiency**: Develop a solid understanding of Git, including its workflow and command etiquette.
  • 📑 **Documentation**: Keep thorough documentation of your work, wins, and areas for improvement to aid in self-evaluation and resume updates.
  • 🗣️ **Consistent Feedback**: Regularly seek feedback from managers or mentors to track your progress and areas for self-improvement.
  • ❓ **Asking Questions**: Cultivate the art of asking the right questions to demonstrate critical thinking and problem-solving skills.
  • 📈 **Project Involvement**: Take ownership of your projects, create design documents, and justify your decisions for clarity and accountability.
  • 🤝 **Networking**: Network and build connections with experienced engineers to gain insights into the industry and company culture.
  • 🙂 **Positive Attitude**: Maintain a positive and cooperative demeanor during your internship to foster good relationships and a strong reputation.

Q & A

  • What is the most overlooked skill for interns according to the speaker?

    -The most overlooked skill for interns, according to the speaker, is experience with Git and having a good understanding of the Git workflow etiquette.

  • Why is documenting important during an internship?

    -Documentation is important during an internship because it helps with self-evaluations, performance reviews, and updating resumes. It provides a reference for your progress and work that can be easily recalled and shared with managers or during future meetings.

  • What is the speaker's advice on seeking feedback during an internship?

    -The speaker advises seeking consistent feedback by talking to your manager or mentor at least once a week. It's important to come prepared with questions and to record the feedback received to track your progress and areas for improvement.

  • How can interns stand out by asking questions?

    -Interns can stand out by not being afraid to ask questions but ensuring they are the right questions asked in the right way. This shows critical thinking and problem-solving skills and helps in getting the desired answers.

  • What should be included in a design document for a project during an internship?

    -A design document for a project should include the technologies used, flowcharts of method calls or endpoints, files created, and justifications for the choices made, such as why a particular database or endpoint was chosen.

  • Why is networking important during an internship?

    -Networking is important during an internship because it allows interns to build connections with experienced engineers, gain insights into the industry, and learn about different roles and expectations within a company.

  • What is the significance of ambiguity in different levels of software engineering roles?

    -The significance of ambiguity in software engineering roles increases with the level of the role. Interns and junior engineers are given more direction, while senior roles involve handling a greater scope of ambiguity and potentially unknown problems.

  • What should an intern's response be when asked about future employment with the company?

    -The speaker advises that if asked about future employment with the company, an intern should express a desire to return, even if they are using the opportunity to leverage a higher offer elsewhere.

  • How can an intern demonstrate being a team player during their internship?

    -An intern can demonstrate being a team player by not gatekeeping information, helping fellow interns, taking feedback positively without taking it personally, and being a positive and resilient person to work with.

  • What feedback did the speaker receive during their internships and how did they apply it?

    -The speaker received feedback to work on communication, take more initiative, and have confidence in their ability to handle projects. They improved by engaging more with colleagues, directing their learning, and trusting themselves to figure out solutions despite initial overwhelm.

  • Why is using Version Control essential for an intern?

    -Using Version Control is essential for an intern to prevent losing work, as the speaker experienced when their code was wiped away after clicking save in a console without Version Control. It ensures that work is saved and can be tracked over time.

Outlines

00:00

💼 Standing Out in Your Internship

The paragraph emphasizes the importance of certain skills and strategies for excelling in an internship and securing a return offer. It begins with the suggestion to refresh coding skills, especially in bug handling, understanding unfamiliar code, and writing tests. It also recommends taking courses in software development, test-driven design, and relational databases. The paragraph highlights Git experience as an often overlooked but crucial skill. The speaker then introduces strategies for standing out, starting with the importance of documentation for self-evaluation and performance reviews. It suggests recording weekly wins and losses, and the benefits of consistent feedback for self-improvement. The speaker also advises on asking the right questions and being proactive in seeking solutions to problems.

05:03

📝 The Power of Documentation and Feedback

This paragraph focuses on the significance of documentation and feedback during an internship. It explains how documentation helps in tracking progress and updating resumes, and how it can be used to record weekly achievements and areas for improvement. The speaker then discusses the value of consistent feedback, suggesting weekly meetings with managers or mentors to discuss progress and areas for development. The advice also includes being prepared with questions and updates on one's work for these meetings. The paragraph also touches on the importance of asking the right questions, showing critical thinking, and problem-solving skills.

10:04

🔍 Going Beyond Coding: Design, Networking, and Positivity

The final paragraph expands on the idea that an internship is not just about coding. It suggests creating a well-thought-out design document for any project, which includes justifications for technological choices and design decisions. The paragraph also encourages interns to network and build connections with experienced engineers to gain insights into the industry and company culture. It advises interns to be positive and helpful, not to gatekeep information, and to handle feedback constructively. The speaker shares personal feedback received during internships, emphasizing the importance of communication, initiative, confidence, and persistence. The paragraph concludes with a cautionary tale about the importance of using version control to avoid losing work.

Mindmap

Keywords

💡Internship

An internship is a period of work experience offered by an organization for a limited period of time to a student or graduate. In the context of the video, internships are crucial for gaining practical experience and potentially securing a return offer, which could lead to full-time employment. The video emphasizes the importance of standing out during an internship to increase the chances of receiving a return offer.

💡Coding

Coding refers to the process of writing source code for software programs. It is a fundamental skill for software development roles. The video mentions that coding, particularly bug handling and understanding unfamiliar code, is a core activity during internships, highlighting its importance in the software industry.

💡Testing

Testing in software development involves the systematic checking of application components to ensure they meet the requirements and function correctly. The script suggests that having experience in writing tests is beneficial during internships, as it shows a proactive approach to ensuring software quality.

💡APIs

API stands for Application Programming Interface, which is a set of rules and protocols for building and interacting with software applications. The video script mentions working with APIs as a valuable skill for interns, as it is common to interact with various APIs in modern software development.

💡Software Development Course

A software development course typically covers the software life cycle, programming languages, and methodologies used in creating software. The video suggests that taking such a course can be beneficial for interns, as it provides a foundational understanding of the software development process and tools like test-driven design.

💡Relational Database

A relational database is a type of database that stores and retrieves data in table format. The video emphasizes the importance of understanding relational databases and querying, as interns are likely to work with databases and need to know how to interact with them effectively.

💡Git

Git is a version control system used for tracking changes in source code during software development. The video script identifies experience with Git as an often overlooked but crucial skill for interns, as it is widely used for code management and collaboration in the industry.

💡Documentation

Documentation in the context of software development refers to the written records or explanations of a project, code, or process. The video stresses the importance of documentation for self-evaluation, performance reviews, and resume updates, advocating for interns to maintain thorough records of their work and learnings.

💡Feedback

Feedback is the process of providing comments or critiques on someone's work to help them improve. The video encourages interns to seek consistent feedback from managers or mentors, as it is key to self-improvement and demonstrating initiative and accountability.

💡Design Document

A design document in software development is a detailed plan that outlines the architecture, features, and technical specifications of a project. The video suggests that creating a well-thought-out design document can facilitate implementation and clarity for others, emphasizing the importance of justifying design choices.

💡Networking

Networking refers to the process of building and maintaining professional relationships. The video advises interns to network and build connections with colleagues, as these relationships can provide valuable insights into the industry and company culture, and potentially lead to future opportunities.

💡Version Control

Version control is the management of changes to documents, programs, and other information stored as computer files. The video shares a personal anecdote about the importance of using version control to prevent loss of work, emphasizing its necessity for maintaining and tracking changes in code.

Highlights

The importance of coding skills and understanding software life cycle.

The value of experience in writing tests and working with APIs.

The necessity of understanding relational databases and querying.

The overlooked skill of experience with Git and its workflow etiquette.

The importance of refreshing your memory on Git commands.

The significance of documentation for self-evaluation and performance reviews.

How documentation helps in remembering progress and updating resumes.

The practice of recording weekly wins and losses for self-improvement.

The benefits of seeking consistent feedback for self-improvement.

The importance of asking the right questions and framing them effectively.

The expectation to ask questions but to do so in a thoughtful manner.

The project ownership and the creation of a well-thought-out design document.

The inclusion of justifications in design documents for better understanding.

The potential requirement to write high-level and low-level design documents.

The benefits of networking and building connections during an internship.

Asking insightful questions about roles and company hierarchies.

The importance of expressing a desire to return to the company post-internship.

Being a positive and helpful team member during the internship.

Feedback on improving communication and taking more initiative.

The advice to have confidence in one's ability to handle projects.

The lesson learned from losing code without version control.

Transcripts

play00:00

this is how you can stand out in your

play00:01

internship and get that return

play00:11

offer congratulations you got your

play00:14

internship but now what you might be

play00:16

wondering what is that one skill that is

play00:18

so important that is often ignored

play00:20

pulled on to that thought we'll start

play00:21

with the core of any software rooll

play00:23

coding my first internship started out

play00:25

with a lot of bug handling and also

play00:28

stepping through the code that I'm never

play00:30

seen before and trying to understand

play00:31

what it all does it will also be really

play00:34

great to have experience writing tests

play00:36

and working with apis some of the

play00:38

essential courses that you probably

play00:39

should do are a software development

play00:42

course where you learn a software life

play00:44

cycle and you get to learn test driven

play00:46

design also it can be really helpful to

play00:48

have taken a relational database course

play00:50

you will probably be working with

play00:52

databases and it'll be really helpful to

play00:54

understand how quering works and lastly

play00:57

the most overlooked skill in my opinion

play00:59

is experience with Git so it's really

play01:01

important to have a good understanding

play01:03

of the git workflow etiquette remember

play01:05

to just refresh your memory about get

play01:08

status get ad all those commands this

play01:11

can save you a lot of headache and help

play01:13

you a lot out in the future my bonus tip

play01:16

is to get good at Googling make sure you

play01:18

are asking the right questions and being

play01:20

able to figure out what they're trying

play01:22

to say and the right response with the

play01:24

preparation out of the way how do you

play01:26

ensure that you're just not another

play01:28

intern let's get into the strategies

play01:29

that will help you stand out first

play01:31

things first documentation I cannot

play01:33

stress how important this is

play01:35

documentation is really important for

play01:38

when you do self evaluations during your

play01:40

internship and in the future this is

play01:42

going to be important for your

play01:43

performance reviews the reason that

play01:45

documentation is really important is

play01:47

because firstly your manager oversees a

play01:50

lot of people and it's really unlikely

play01:52

that they're going to remember your

play01:54

progress and everything that you've done

play01:56

but this doesn't matter when you've

play01:57

written documentation because you can

play01:59

just reference this information in the

play02:01

future for future meetings anything like

play02:03

that it's stuff that you've remembered

play02:04

for yourself another reason why this is

play02:06

so important is that when you're

play02:08

updating your resume it's really hard to

play02:11

remember everything you did during your

play02:12

internship but because you documented it

play02:14

it'll be super easy to update your

play02:17

resume another thing that you can add to

play02:19

your documentation is to record your

play02:21

wins and your losses of the week things

play02:23

that you did well and things that you

play02:24

kind of need to work on every week

play02:26

documentation is something that I

play02:28

started doing at my second internship

play02:30

because I noticed one of my friends

play02:32

doing it and I was like that is a really

play02:34

good idea I need to do that because it's

play02:36

really easy to lose track of everything

play02:38

that you've learned everything that

play02:40

you've done because every week kind of

play02:42

Blends into each other if you take away

play02:44

any advice from this video I think this

play02:46

is the one thing that you should do my

play02:48

next piece of advice is to get

play02:49

consistent feedback tying into the first

play02:51

point of documenting record what they

play02:53

said in terms of your feedback what you

play02:55

need to work on your progress feedback

play02:57

is more than just criticism it's it's

play02:59

kind of the key to self-improvement I

play03:02

really recommend talking to your manager

play03:04

or your Mentor at least once a week and

play03:06

ask for feedback on your progress come

play03:08

prepared with the questions you want to

play03:09

ask and also let them know of how well

play03:12

you're doing what you're working on

play03:13

things like that for example if they

play03:15

told you that you're not progressing as

play03:17

fast as they would like and you're kind

play03:19

of getting stuck just record all the

play03:21

ways that you try to unblock yourself

play03:23

you talk to your co-workers you asked on

play03:25

slack record that down and bring it up

play03:27

in the next meeting this is so important

play03:29

it shows that you take initiative it

play03:31

shows that you hold yourself accountable

play03:33

it makes you a really great employee and

play03:35

a great team player so remember that

play03:37

these meetings that you ask for feedback

play03:39

with your manager or your Mentor these

play03:41

are generally self-directed that means

play03:43

you're going to lead the meeting come

play03:45

prepar to these meetings with questions

play03:48

that you want to ask and things you want

play03:50

to say kind of what you could talk about

play03:52

is your current progress let them know

play03:54

what you've been working on what you're

play03:56

doing and ask them if you're on track

play03:58

and what can you do do better the next

play04:00

step to ensuring a great internship is

play04:04

not being afraid to ask questions but

play04:06

remembering that you should be asking

play04:08

the right questions in the right way

play04:10

asking questions is expected you're

play04:13

going to have a lot of questions there's

play04:14

a lot of things you don't know but

play04:15

there's definitely an art to it learn

play04:17

how to frame your questions to show that

play04:19

you're critical thinker and you're good

play04:22

at problem solving and also let you get

play04:24

the answers that you're looking for be

play04:26

very clear with your questions provide

play04:29

context because it's very unlikely the

play04:31

person you're asking knows everything

play04:33

about your project a way better way to

play04:35

ask your questions instead of just

play04:37

saying hey I'm stuck I don't know what

play04:39

to do what should I do is saying hey I

play04:42

am stuck on XYZ I've already tried this

play04:46

solution a and this is the result and

play04:48

I'm thinking about trying solution B

play04:50

next what do you think I should do now

play04:53

onto the project it's really likely that

play04:55

you'll be given a project in your

play04:57

internship it's important that you're

play04:58

not just going through Through the

play04:59

Motions coding away and not thinking too

play05:02

much about why you're doing the things

play05:04

that you're doing a wellth thought out

play05:06

design document for your project can

play05:09

make it so much easier when it comes to

play05:11

implementation and also be easy for

play05:14

other people to interpret the decisions

play05:16

that you made for your design document

play05:18

some of the things you can include are

play05:19

the Technologies you use a flowchart of

play05:22

the method calls or the endpoints that

play05:24

you created or any files you made things

play05:27

like that but the key to all of these

play05:28

things is to provide justification as to

play05:31

why you made those choices why did you

play05:33

choose this database over another

play05:35

database why did you decide to write

play05:38

this end point instead of another one

play05:40

understanding why you made these choices

play05:41

and being able to articulate that is

play05:44

crucial if you're going to be presenting

play05:45

your project there's a really high

play05:47

chance that you're going to be asked

play05:49

questions it's a good idea to have done

play05:51

all the justification You' figured out

play05:53

your reasoning behind everything so you

play05:55

know your project really well and you

play05:56

can answer on the spot so this is is my

play06:00

experience writing documentation during

play06:02

my internships I wasn't explicitly told

play06:04

at my first internship to write a design

play06:07

doc but I just did one anyways because I

play06:09

knew that if someone were going to take

play06:11

over my project I wanted them to

play06:13

understand what I did and also the steps

play06:16

moving forward and some of the things

play06:18

that included in the design doc were why

play06:21

I chose that feature to work on and

play06:23

files that I changed and some of the

play06:25

endpoints that I created at Amazon if

play06:28

you got a good project it's really

play06:30

likely that you're going to have to

play06:31

write a highle and a low-level design

play06:33

doc even before you start your project I

play06:36

found this a little bit hard because I

play06:38

didn't know the technologies that well

play06:40

and I didn't know if I could make an

play06:41

informed decision about what I was going

play06:43

to use writing the design doc for my

play06:45

project really helped me take ownership

play06:47

over it because I had to be careful

play06:50

about the decisions I was making because

play06:52

it would influence how my project was

play06:54

going to look later on and I kind of

play06:56

flip-flopped a lot but it was ultimately

play06:59

like super helpful and I think that is

play07:01

something that you should definitely do

play07:02

in your internship coding is obviously

play07:05

very important when it comes to your

play07:07

software internship but there is more to

play07:09

your internship than just programming

play07:11

you can go beyond the code and make the

play07:13

most of your time by networking and

play07:15

building connections with the people

play07:16

around you at your internship you're

play07:18

going to be surrounded by people who

play07:20

have had Real World experience as an

play07:22

engineer and you get to ask them any

play07:24

questions that you want about the

play07:26

industry and what it's like working at

play07:28

this company full-time what their

play07:30

previous experience was like anything

play07:31

like that there were a lot of things

play07:33

that I was curious about during my

play07:34

internships I asked what's the

play07:36

difference between software engineer and

play07:38

other positions like management devops

play07:41

things like that what those expectations

play07:43

are for those rules something that I

play07:45

asked at Amazon is what's the difference

play07:47

between L4 L5 L6 and L7 and so on if you

play07:51

don't know what that is it's just the

play07:53

different levels of software development

play07:55

there kind of just like senior Junior

play07:57

intermediate every company has different

play07:59

hierarchies and different expectations

play08:02

for each role and this is the answer

play08:04

that I got back essentially between all

play08:06

of these levels there isn't too much of

play08:08

a difference between how skilled you are

play08:10

at programming you're expected to be a

play08:12

very proficient software engineer at

play08:15

every level the biggest difference is

play08:17

the level of ambiguity you'll be

play08:19

handling as a intern or a junior

play08:22

engineer you're kind of being told what

play08:24

to do when it comes to your project you

play08:25

don't have that much ambiguity except

play08:28

for the technologies that you'll be

play08:29

using so the scope of ambiguity is

play08:32

really just what technology you're going

play08:33

to choose what database you're going to

play08:35

choose but as you go up in levels your

play08:39

scope of ambiguity gets a lot bigger and

play08:42

you'll potentially be handling problems

play08:44

that you don't even know about my final

play08:46

piece of advice is don't shoot yourself

play08:48

in the foot if anyone at the company

play08:49

asks if you want to work here in the

play08:51

future just say yes okay just say yes

play08:54

this is something that I saw one too

play08:56

many times during my internship where

play08:59

people would say that they did not want

play09:01

to return to the company so on one

play09:03

occasion there was a very high up person

play09:06

in a management role who came from New

play09:08

York to meet some of the interns and

play09:11

they asked a bunch of us like if they

play09:13

wanted to return back and come back most

play09:15

of the people said yes but there was one

play09:18

person who said that they were just

play09:20

looking for a return offer from Amazon

play09:22

so that they could leverage their return

play09:24

offer to get a higher offer at a

play09:26

different company and they said this to

play09:28

someone who probably makes decisions as

play09:31

to if people are coming back and I think

play09:34

that you should probably just keep that

play09:36

to yourself it's not something you need

play09:38

to share with other people I just feel

play09:40

like I have to say it even though

play09:42

hopefully you're watching this and you

play09:44

know that you're going to just say yes

play09:45

you want to come back to this company

play09:47

and this just leades in my next point

play09:48

just be a good positive person during

play09:51

your internship be someone that other

play09:52

people would like to work with in the

play09:54

future don't gatekeep information when

play09:56

it comes to helping out your other

play09:58

intern friends like let them know what's

play10:00

up if anyone gives you feedback try not

play10:02

to take it to heart it's just going to

play10:03

help you in the future anyways and it'll

play10:05

make you someone who is stronger more

play10:08

resilient someone who is really nice to

play10:10

work with right before I finish I want

play10:12

to give some of the feedback that I've

play10:14

gotten as an intern maybe you can keep

play10:16

this in mind during your internship at

play10:18

my first internship my feedback from my

play10:20

manager was to work on my communication

play10:22

I didn't really talk that much at all I

play10:25

didn't engage with the other Engineers I

play10:27

should have asked them more questions

play10:29

about about their job or just been more

play10:30

interested in what they did and this is

play10:32

something that I definitely improved on

play10:34

in my next internship I definitely made

play10:36

a lot more friends talk to other interns

play10:38

talk to other co-workers and got to hang

play10:41

out with them which was really cool the

play10:43

second thing my manager told me was I

play10:45

needed to take more initiative basically

play10:48

for my project every new feature that I

play10:50

work on I would ask him what should I do

play10:53

what should I work on and instead he

play10:55

would like if I just directed that

play10:57

learning myself and I would be like hey

play10:59

I think we should work on this feature

play11:01

because I've done this research that

play11:03

justification and I'm going to do that

play11:05

and is that okay with you I should have

play11:06

taken more initiative in that area and I

play11:09

think that's very valid feedback and

play11:11

taking initiative over your project is

play11:14

something that everybody values and

play11:16

shows leadership at Amazon my manager

play11:18

told me that I should have confidence

play11:21

that I will be able to do the thing and

play11:23

what that means is every time I would

play11:26

get a project or my project scope would

play11:28

change I'd be very overwhelmed and

play11:30

visibly overwhelmed and he would

play11:32

obviously be able to see it and he just

play11:34

told me that you know you're going to

play11:35

figure it out don't worry too much okay

play11:37

it's overwhelming in the beginning but

play11:39

you should have confidence and trust in

play11:41

yourself that you're going to be able to

play11:43

figure it out which I think is very very

play11:45

powerful advice I think it's something

play11:46

that I should just lead my life with

play11:48

like have a little bit of confidence

play11:50

that it's going to work out and my

play11:51

mentor actually gave me feedback that I

play11:53

had really good persistence and any time

play11:56

that I didn't know a technology even

play11:58

though I I was overwhelmed I would still

play12:01

push through and try to figure it out

play12:02

there were a lot of technologies that

play12:04

nobody on my team had ever used before

play12:06

so I had to just do my own digging and

play12:09

my own research and my last thing is

play12:12

something that I'm telling myself and

play12:14

that is use Version Control during my

play12:16

time in Amazon I was working in the AWS

play12:19

console for a bit one of the services

play12:21

that I was using did not have Version

play12:22

Control and I would just click save and

play12:24

then hope that my code would be saved

play12:27

and one time I clicked save and all my

play12:29

code got wiped away I had spent probably

play12:32

a month working on those Python scripts

play12:35

and they were just gone so I stayed up

play12:37

till like 2:00 a.m. trying to fill in

play12:39

all the work that I did and try to

play12:40

remember everything that I wrote down

play12:42

and from that moment on I was like I

play12:44

need to take this out of the console and

play12:47

put it in my own branch and just have

play12:49

Version Control so I don't lose it this

play12:51

probably given for most people but I'm

play12:53

I'm going to do that next time following

play12:55

all these steps will ensure that you

play12:57

have the best internship it will will

play12:59

ensure that you take away everything

play13:01

that you need to from this experience

play13:04

thank you for watching this video and I

play13:05

hope you found it helpful remember to

play13:07

share with any of your friends who are

play13:08

starting an internship soon you want to

play13:10

know how to get an internship in 2024

play13:14

click this video like this video And

play13:16

subscribe and I'll see you in the next

play13:18

one

Rate This

5.0 / 5 (0 votes)

Etiquetas Relacionadas
Internship TipsSoftware SkillsGit WorkflowCareer GrowthFeedback LoopDocumentationVersion ControlNetworkingProject ManagementCommunication Skills
¿Necesitas un resumen en inglés?