Engineering: Q&A

(Previous: Problem Solving Strategies: Small Incremental Changes)

computer_problems
My job, according to xkcd.com

I got some questions from a second grader interested in computer engineering, below are my responses:

1. Could you describe one of your typical workdays?

When I arrive at the office, I get some coffee, read emails, and catch up with my team first, then figure out what I need to work on that day. We have whiteboards on all of our walls so we can brainstorm, draw ideas, and write out what needs to get done. From coffee until just before lunch, I write code to solve the problem I’m working on, then we have a team meeting just before lunch so we can all catch up on our individual projects. I usually eat lunch with my team, and sometimes we also take a break by playing ping pong, Scrabble, or video games for a little while. Then I write more code, with breaks to work with others, have a meeting, or just to stretch. When I think I’ve solved a problem, I show it to another engineer on my team before I add it to our main project so they can check for mistakes–we all help each other produce the best work we can.

2. What skills are required in your position on a day-to-day basis?

I mostly use three sets of skills: coding skills, design skills, and people skills.

Coding skills are the instructions I give to the computer/website in C#, TypeScript, JavaScript, etc. (there are a LOT of programming languages, those are the ones I use the most at my job). So using those languages, I can tell my website to do things like make a chart of all of the tweets that have been sent to our Twitter account, and sort the tweets into positive messages and negative messages, so we know what people are saying about us.

Design skills are the big picture questions we ask before starting a project. For example, when we make a website, we have to think about things like: How should the site look? Should it look different on a phone? Should it be all one page or lots of pages? How will people know how to find everything? Should all the information be public, or should you have to login to get to some of it? Should everyone have the same information, or should each login have special information that only it can access (like your personal email)? Where do we store the data for the site, and how should it be accessed?

People skills are really important for communicating with my manager and my team. Engineers work together a lot, and sometimes we’re working on the same project at the same time, so being friendly and clear in communication is really important so that we don’t undo each others’ work by accident. And we’re usually working toward deadlines, so we talk a lot about how much time we need to finish our projects.

3. What parts of your job do you find most challenging?

Keeping up with the newest technology can be challenging. There are new additions to coding libraries all the time, because people are always researching and building new things, and we want to keep our projects up to date. So I’m always learning something new–in fact, I try to schedule a few hours to learn new technology in my weekly schedule, to make sure I keep up.

4. What do you find most enjoyable?

I LOVE solving problems, which is something I get to do all the time. Last week, we had a problem of how to make a chart (on a mobile phone) where you can pinch-zoom it, drag it back and forth, click on it to expand sections of it, and then scroll past it (without a scroll bar). It wasn’t something I had seen done before, but I had seen parts of it, so I got to figure out how to put them all together to get the solution I wanted.

5. Are there any negatives to your job?

I wish there were more women who were computer engineers. Most of my team is men–and they’re really great!–but it would be nice to have a more equal balance of men and women. It is pretty normal to have a team of 15 engineers with 12 men and only 3 women. (Here’s an article for your teacher if you want to see more detailed numbers)

6. How many hours do you work in a typical week?

About 40 hours. If it’s crunch time, more like 45. There are engineering jobs that can be much higher than that, but my team is pretty balanced, which is one of the reasons I like it so much.

7. Which seasons of the year are toughest in your job?

I work on a team that supports Xbox Live, so our busiest season is the period leading up to Christmas, because that’s when people are buying, opening, and using new consoles and games. Usually October through December we spend extra effort monitoring all of the new games and devices, because we want everything to be perfect for our customers.

 

Answering questions is fun, feel free to send an email if you want to talk more!

(Next: You Can’t Program a Duck)

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s