Thursday, November 19, 2009

Advice for a college Freshman

My post about what you'd teach a 15 year old reminded me of a blog post I have been meaning to write since September. One of the message boards I frequent, SVT Performance had a thread about advice for engineers. Initially it was targeted at women written by an ME, but turned into some good advice for anyone in college. Sorry I can’t deep link to the posting but it is in 'road side'.

I added a few comments, but I have thought more about it so here goes:

Here is my advice to a freshman today in a technical field.

Ask for help. Join study groups. Don’t be afraid of getting to know your peers. You may have been the smartest person in your high school, but there are going to be people better than you in some subject and you better than others in a different one. Get to know your peers so you can help each other. Figure out who are the good people that help others and who are just leaching from the group because they are in over their heads. The guy who kicks ass in Calculus and helps you may struggle in Fluid Dynamics or Data Algorithms were you shine.

Get an internship/co-op as soon as possible. Even as a freshman. Here is one of the last times that you can use your parents and family and not be accused of nepotism. Ask everyone you know if they know anyone in the field you are interested in. Talk to them about summer jobs or co-ops. Of course work through your school’s placement and co-op departments, but sometimes a friend of a friend knows about better positions.

In your internship, make sure the people you work with know who you are. They are going to expect you to ask lots of questions, not know much and even make mistakes. Don’t be the ‘kid’ that no one remembers because you sat in the corner. Here is a chance to introduce yourself to a lot of people in the industry you are interested in. Unlike the rest of the world, these are people you DO have something in common with, so don’t feel awkward about your intelligence or interests. I’ll bet they have felt the same way!

Get a Linked In profile. Yes, I know Facebook is cool (I have one too), but Linked In is where professional people keep track of their networks. It is very rare to hear of someone removing a professional contact in Linked In. Why? Because the network is valuable for years after you’ve stopped working with someone or at a specific job. Being able to search on ‘who works where I am interviewing’ is powerful, but so is asking (or someone asking about you) ‘this would be a great job for Jill, I wonder what she is up to’ AND being able to find them.

Now this doesn’t mean you ask everyone you meet in your internship to be a contact. Instead wait until a couple of weeks BEFORE your internship ends for the semester and ask the people you’ve worked best with for contacts. This isn’t Facebook so you don’t ask everyone.

As you get to know your peers, invite them to Linked In as well. Not the leaches, but the people who genuinely are good at what they do and are people you’d like work with some day. The reason here is the same as above: these are people who are going to be in your industry one day. They are going to be looking for jobs one day or might be able to help you. They may also have the solution to a problem you have (or vice versa). By maintaining the relationship you have at least one way to find them (or them find you) when the time comes.

Again, don’t add everyone in your class. Only add the people you think you’d want to work with. A plus to having a medium sized college network with a small to medium sized professional network is when the hiring manager looks at your profile, they see real professionals AND peers, which tells them a lot about you.

Finally, update your Linked In profile at the beginning and end of each semester at a minimum. As you get closer to graduation the profile and resume should reflect your internships instead of your classes. Update your status regularly about what you are working on. For example, having a status of ‘taking thermo 313 this quarter’ or ‘loved the lecture on np-completeness’ may get people in your network to think of you and reply. This again keeps you in their thoughts.

This isn’t one way. By regularly checking your network you can also see where you could offer help to a peer or a contact. You will be surprised by how many people post about job openings. You may not qualify (or be looking), but the guy that helped you with Calculus might be. By putting them together you help all three of you.

One more thing: don’t cross professional networks and Facebook. While it is tempting to friend someone from your internship, you are in college and you are allowed some stupid things, but don’t let non-friends find out!

Wednesday, November 18, 2009

What would you teach a 15 year old interested in technology?

At last night’s AJUG meeting Burr asked the group a couple of questions about technologies needed today to be hired directly onto a team. The question morphed a little into ‘what would you tell a 15 year old to learn’ if they wanted to be in technology. That question got things going in a different direction with a lot of good feedback.

This post is about my thoughts on this, since I have a 15 year old, although one that isn’t interested in being a programmer.

First would be to learn how to think. I know that sounds strange, but learn how to take data and ask questions or given a problem think about how to solve it. Even when I was in elementary school 30+ years ago, a lot of what we learned was how to apply the processes and algorithms we were taught to the examples/questions we were given. Not, given this poorly defined problem, figure out how to solve it with your full knowledge, not just what the teacher gave you yesterday. Think of it as the difference between geometry on calculating the angle on a graph and assembling a Lego house without instructions.

How do you teach someone to think? Unfortunately I don’t really know. With 3 kids I see that each of them learns differently and the processes I use to help each learn something is different. My only advice on learning how to think: has them questions that aren’t what the teacher taught them in the same area, or ask a different set of questions from what the homework asked. For example, Courtney is working on European history during the colonization times. The expected answer about why the Europeans wanted colonies (from the book) didn’t include the greed factor. And the arrogance factor. So I pushed her to think like the King or Queen during that time and see what you’d want. While she was able to give the 'book' answer, she is also learning to think in someone else shoes.

Back to technology. Thinking about technology, I think learning any language that is ‘backend’ focused isn’t a good place to start. Java, C, Groovy, Ruby, C++, Perl and non-UI languages won’t interest the kids. Instead pair them with something that shows immediate usefulness. So use Grails or Ruby on Rails or even GWT. Get them working on making something they can see and show off.


When I learned to program, most people didn’t interact with computers each day, so showing a green-screen output from the Fortran or C I was writing to my peers or parents was novel and unique. Today, everyone knows the web and a browser so showing them a text output isn’t going to get the response the programmer needs as encouragement to continue. Show someone a web page you built and I’ll bet most kids will get ‘wow, I wish I could do that’ as a response.

Once they have a basic language under their belts, look at the Platform as a Service cloud systems like Microsoft’s Azure, Google’s AppEngine or even Force.com. Why? Because I believe these platforms are going to be where a lot of the jobs are will be in the future. Whether it is a startup taking an idea that MAY require greater scale later, but not today, or the IT developer putting together applications for departments to address specific business problems, these platforms are going to make it easy to deploy solutions fast, instead of waiting on hardware purchases. Of course the whole ISV space is going to make a comeback because of these technologies.

Finally, encourage the kids to get out of the house and play. Build things like go-carts and bird houses. Learn to cook, even if using a recipe from a big cook book (Better is a hand written card from Grandma) Encourage them to take things apart to see how they work. The digital world makes this hard, but what about their bike, scooter or old rusted car sitting in the garage?

Monday, November 2, 2009

ControlTier Presentation At AWSome Atlanta

A co-worker of mine presented about how we are using ControlTier at AWSome Atlanta.

I missed the presentation due to a softball tournament for my daughter, but heard it was great. Watching/Listening to the video I have to agree!

AWSome Atlanta ControlTier Demo