Keep Your Portfolio Up-to-Date At All Times

I have a never-expiring calendar reminder for myself to update my portfolio. Otherwise I just won’t do it.

Make Yourself Do It


But it is surprisingly hard to make yourself do it even with a calendar reminder constantly dinging you. And unfortunately you only ever realize that you needed to do it – and didn’t – when you need your resume to be up to date when you are ready (or worse: when you aren’t ready) to move to the next gig.

resu1This added pressure means that you are now going to be under the gun to send out your resume in a not quite up to date form, or you will struggle to remember all the cool new things you have done in the past many months.

It won’t be your best showing. You won’t likely have all the detail you once had. And ultimately you are doing a disservice to yourself when thinking about this late in the game.

Use LinkedIn As Your Source of Truth

A long time ago I stopped maintaining a resume in document form.

Before there was a LinkedIn it made sense to constantly toil over the formatting of my resume. And it made since to keep a copy and several backups.

I needed a consistent place to go to for the source of truth for my work history as there wasn’t one clear winner on the internet for such things.  Back then I would keep a digital resume on Monster and various other job boards. It was a real hassle to keep them all up to date.

But now a days it is easy to keep your information in LinkedIn. It is now my source of truth.

I try to go there at least once a month to enter at least one cool thing I did that month. It might be something simple like solving a customer’s problem. Or something more complex like learning a new thing in a pinch prior to a sales call or speaking engagement.

sour1Similar to blogging, if you don’t pay attention to the every day details of your day job you will miss the really important parts that you can use later to sell yourself.

Additionally you are missing the opportunity of someone looking for that special talent that you just picked up. You may make good money doing a bang-up job with that 80% thing you do. You run up against some new fancy way of doing things. And that becomes your new norm.

But you never update your resume.

As far as recruiters and other hiring managers know you are only really good at that 80% thing. There is no mention of your new go-to-favorite skill – which is what they really need right now and can’t find anywhere.

This is a missed opportunity for you in a couple of ways. The recruiter won’t contact you to let you know that your new skill is in high demand. Which means you miss out on the possibility of shifting to a new gig. Or, if you really like your job, but want to earn more, you might miss the opportunity to bargain around your newly found skill. Either way, this is your loss in the here and now.

So what sorts of things might you keep track of on LinkedIn? When you have a job, you can use LinkedIn as a running log of interesting facts. When you don’t have a job you can scour through your profile and clean out the things that aren’t really relevant any more. Let’s look at what sorts of things are hand to keep track of:

Title and Responsibility Changes

There are a couple ways of tracking when your title changes and when your responsibility changes. The first is the easiest and doesn’t require much thought. Keep one entry per company you work at. Update the title. List the existing responsibilities.

promo1This is a great way to keep a short resume. And it is a great way to not tell your hiring manager about your history. This is where the difference between a traditional resume and a CV/Portfolio come in. When I am in the hiring manager role I like to see where a person has been and all the things at a high level they have done while at a company.

If you were a developer, then a team lead, then the architect, then the engineering director – list those out. They are very different jobs. They will have very different responsibilities. And being able to show that you have done them all is important to many hiring managers. It shows you are experienced.

We have interns at my current company. One of which we have had back three separate times. For a person like this it is very important to distinctly show that you came back at three different times. And detail out what you did on each occasion. This paints a different picture than someone who just worked somewhere with no timeline. It doesn’t show that we liked you so much that we kept hiring your back.

Business Goals Achieved

Business people, hiring managers, etc. – they don’t generally care that you learned the latest version of HTML. What they do care is that because of your mastery of this new version of HTML you were able to up the sales conversion of your check out process because more customers are able to complete the check out process on their phone and tablets.

roi1Geeks really care that you were able to write a mail sending tool in 100 lines of unreadable code. But business folks care that your tool took into account the bounce rate of certain domains and the rules around how you stay off of black lists so that your email penetration goes up 30% which effectively increased their over all penetration resulting in X number of new dollars for the month.

Now, don’t get me wrong. You need to swizzle this in a manner that you salt and pepper your business swizzle with some tech babble so that all audiences are made happy. If you just deliver the business numbers uber geeks may find your resume wanting. Add appropriate tech talk to sell that you know what you are talking about.

Use the Right Voice to Tell the Right Story

Equally important to what you did is how you tell the story. It is very off-putting to read about a guy that is singing the me-me-me-me-me-me-meeeee song! It is ok for you to say “I used tech X to achieve business Y” now and then. But equally important is how you enabled the team to achieve a goal. Or how you pulled bugs for a week to get to zero defects (sacrificed your enjoyment for the team). Tell a story of being a valuable team member.

If you are in a leadership role tell the story of how you are a shit-umbrella vs. a shit-funnel.  Give concrete examples of how you help you team get stuff done.

Bottom line: keep your portfolio up-to-date at all times. And LinkedIn is a great place to use for it.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More


Level Up Your Programming Skills And Connections Through Volunteering

Do you feel stuck in your current job?

Maybe you are working on Line of Business desktop apps but you really want to be doing native iOS or Android work? Perhaps you are working for a large corporation–and have been for years–attending a lot more meetings than you used to, and you keep hearing about the good life at small startups.

I’m going to let you in on a little secret I accidently discovered just a few years into my career. I’ve pivoted multiple times, by choice, and last year landed my dream job as the technical co-founder of a local startup in downtown Austin. So what’s the secret?


That’s it!

Now, don’t click away just yet. Thar be some powerful concepts at work behind the gift I just handed you, matey! Stick with me so we can unpack this box.

First Volunteer Work: Sys Admin

First, let me explain how I figured this out.

Active Directory Users and Computers
About 15 years ago I setup a 25 PC, Windows 2000 network for a women’s crisis center for free. It’s a long story but the point is that at the time I didn’t really understand the value of what I did. I just needed
the experience because I thought my dream job was to be a Windows NT systems admin and I was studying for my MCSE at the time. (I aced the tests btw). I completed that project and landed a paying NT Admin job later that year while feeling good about helping a good cause.

Since that experience I’ve successfully voluteered my time to nonprofits, startups, and friends with small businesses. The project size and scope is really up to you to define just as long as it’s valuable to everyone involved.

Forget About Money (For Now)

First off, too many people I know won’t take this advice because they are stuck and failing at earning “market rates” for their work. Your compensation is going to be real world experience that deserves a prominent spot on your resume.

io1Or maybe they don’t have the time. Heck, it’s midnight, and I didn’t start writing this until after I put the kids to bed. I wanted to help a friend by guest posting and sharing some of my best ideas though. I happen to like writing and sharing knowledge with others. (Side note, guest posting is a great way to volunteer your time.) Look for projects which have a very defined scope that you think you can pull of in the time you used to spend power watching random two-star sitcoms on Netflix.

Trust in the fact that it will pay off in the long run. Good deeds don’t go unnoticed.

Problem Solving IRL

In addition to experience, there is something about listening to a client explain their problem forcing you to come up with the solution. That’s the type of knowledge that won’t appear in a textbook and that’s exactly the type of real world problem-solving ability that future employers are looking for.

Volunteering sends a message about the type of person you are. Explaining the project work you did for a nonprofit is interesting. Knowing that you did it to level up your game says a lot.

References Matter

You are also going to walk away with a solid reference if you are successful. Go check my LinkedIn recommendations that others have written.

I received a glowing comment by Kent Odland for volunteering my time to his young startup last summer after having coffee with him once. It was an interesting startup concept and I wanted to learn a specific skill he needed. He didn’t believe me at first. I think he thought I was trying to steal his IP or email list because he asked me to sign about 5 pages of legal documents saying I would be liable for missing deadlines, etc. I didn’t end up signing anything other than an NDA. I simply had the time and wanted to help him.

Do you think Kent would bend over backwards to get me an interview at his employer if I asked him to? I’m pretty sure he would!

Be Of Service To Others

As engineers we typically think of learning as a solo activity. We go buy a book, read through every search result on google and stack overflow, then maybe we create yet another Todo list project on Github, etc. Trust me, I’ve been there too and I still have to resist the urge to rely solely on this method of learning.

Thread Co-Founders
The Thread founding team

What’s interesting is the mental shift that happens when you are working for someone rather than simply working on something. The former requires accountability and relationship building, while the latter often lacks direction and purpose. I’m willing to bet you will learn more at a faster pace by working for someone or some cause than if you go it alone.

When I say “working for someone” I’m talking in the noblest sense that you are being of service to another person. Which is a very humanizing thing. People inherently care about people they know. Working side-by-side in the trenches is such a powerful mechanism. You simply cannot get to know a person by meeting for coffees alone. Work for them, work with them, in order to get to know them.

“The best way to find yourself is to lose yourself in the service of others.”
– Mahatma Gandhi

Engineering work can be isolating, while career building is a team sport.

Don’t Overthink It

Don’t be tempted to try to identify projects only for people or companies where you believe they could directly help you in some way. If you read about my journey to becoming the technical co-founder of Thread, you might think I had some master plan at work.

The truth is that I didn’t have a plan other than trusting in the process. In hindsight it’s easy to line up all the events that took place and draw a straight line between points A and B. However, that’s not the whole story. I volunteered to help four different organizations last year and three of them didn’t directly lead to my current opportunity. But I do have a stronger network filled with people who would love to help me if I called on them.

Takeaway: Volunteer To Learn Specific Skills

The final lesson I want to leave you with is that my only “plan” was to be of service to others while developing some very specific skills.

In this case, my thesis was that iOS development was in high demand and my enterprise mobile background was already a good foundation for this pivot. I made a ton of connections along the way and many of those relationships will just continue to grow. I never knew where it was going to lead me but I was always confident that I would find something interesting if I kept going.

I hope you consider volunteering time as a valuable career building strategy and a great way to help those around you.

Be hungry and trust in the process my friend.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More


Climb the Right Ladder

Once in a job you will quickly discover that a broad array of technical career roles exist. At a high level, do you want to be a programmer or manage programmers? If you want to remain in a hands-on role developing software, do you want to go with the architect or engineer track?

In short, many ladders exist for you to climb, and you need to choose the one that aligns best with your interests and strengths. Fortunately, you can often leap from one ladder to another, so you are not stuck forever on one of them if your desires change over time.

The Technical Climb

Most companies offer a technical track for software developers that may branch into sub-tracks as you move along. Typically the levels are engineer, staff engineer, senior engineer, principal, chief, distinguished engineer, and then fellow or CTO. Not all companies have (or need) all these levels, but this categorization is common.

Somewhere up the track, usually at the principal level, the track splits into architect vs. engineer sub-tracks.

track1Architects excel at high-level design and structure. While they also are often excellent coders and deep in technical knowledge, they are capable of understanding customer needs at a high level and architecting solutions to them. For example, the architect of a large website may be juggling in his or her mind the website design itself, the web backend, the scaling and deployment stories, and even specific technologies used in each part (database types, buses, messaging frameworks, and so on).

Engineers like to deep-dive into specific technical implementations, solve difficult problems, and are willing to get into the low-level details of issues. Their minds are drawn to such problems, and they derive satisfaction from finding and implementing solutions to them. If a skilled developer gets placed in an architect role–which happens oftentimes out of necessity–you will quickly know he is an engineer if he gravitates right back down into the guts of a problem and has a hard time pulling his head back up to look at the big picture.

Typically you will discover early on whether you are more of an architect or an engineer. Some people can do both almost equally well, but most people favor or the other. It’s important to recognize which sub-track you most fit in as that will guide your career decisions later.

Companies may also have other technical tracks, ones like QA engineer, product support engineer, systems engineer, and applications engineer. These roles are usually not straight coding ones but instead involve test suite design and test writing, advanced customer support on technical topics, or creating proof-of-concepts for potential customers.

You want to climb the ladder, but how do you do it? Quite simply, find out how your company defines the responsibilities for the different roles, and then begin to do those responsibilities in your current position. In doing so, you make the decision to promote you a no-brainer. You are already working at the next level.

The Student Becomes the Teacher

I worked with a young guy named Adam when he was fresh out of school. I was the senior engineer on a large backend system, and he joined under me to help implement features and fix bugs. He was quite skilled and did well, but due to misunderstandings at our company, he ended up leaving.

He left as a staff software engineer but joined his next company as a senior engineer–this was due to our company promoting people at an abominably slow rate–and soon he was promoted to principal engineer and was leading the development of a large part of his new company’s flagship application.

I lost touch with Adam for a few years, but I reconnected with him and another mutual friend to find out what he was up to. He had moved to a hit startup company and was the director of software development. Within the year, he was offered a CTO position. Young Adam had strategically defined and refined his goals and worked toward them. In the time I remained at one company as a senior software engineer, he had jumped to several companies and gone from staff engineer to CTO!

Far from being jealous of him, I admired what he had accomplished and reflected on my own stagnation. His example was an important factor in my decision to move to a different company and push my boundaries.

Professional Cat Herder

After gauging your strengths and interests, you may decide to go to the dark side and try management. Hey, someone’s got to manage all the programmers, and you may have the aptitude for it.

Being a manager of programmers is a very different beast than being a programmer. I have seen (and endured) many managers who were once programmers and decided to cross the divide. Some were quite good; others were awful.

cathe1Ideally you can find a company that allows you to try out management on a trial basis, with the understanding that if you don’t like it or do well at it, you can go back to being an individual contributor as a programmer without your career being harmed. I have worked at companies like that and seen developers go to management and back again without any problem. Most mature companies recognize that some programmers just don’t make good managers, but you don’t know until you try.

Management has its own track, typically avoiding the “staff” title and moving from group manager to senior manager to section manager and so on up to director and vice-president. Once you reach that big wig status–uh, I mean “senior management level”–you have gone beyond the scope of our help. True story, we used to refer to the big wigs as “the higher ups” and the higher ups took offense and sent out a memo to all employees that the appropriate way to refer to them was “senior management.”

Where Do You Excel?

As you try out different roles or move up in level, seek to identify the conditions under which you work best. For example, after several years I discovered that I am an engineer, not an architect, and more importantly that I do best when working under a strong architect or engineering lead. I naturally tend to find positions where an existing strong technical leader has already blazed the trail.

You may discover that you excel most when you can do the trail-blazing yourself, and chafe at having to follow in another’s footsteps. Or you may realize that you enjoy working closely together with at least one other person, doing pair programming and test-driven development together. These are important markers to take mental note of, as you can deliberately seek out positions and companies where you can thrive.

Of course, you need to balance this out with the need to push yourself beyond your comfort zone. Sometimes you need to take that role that stretches you outside your boundaries. Doing so acts as a forcing function for personal growth. The worst outcome isn’t failure but never trying in the first place.

As you work, be mindful of which track you are on and whether it is the right one. Should you consider jumping to a different ladder? Are you making steady progress up your current ladder? Are you finding fulfillment in the technical track you have chosen? These are the questions to regularly ask yourself as you refine your career goals.

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

Read More