Posts

Engineering Career Trajectory

Image
  I was talking to a good friend of mine about career paths, and where their focus generally falls as they grow in their career - as I did, I thought about my own experiences and the companies with which I've interviewed. In particular, there have been some that I avoided purely because their expectations didn't align with my own for the role I was pursuing. That lead me to make the above graph - it's not necessarily to capture where all our time is spent, but more about the types of problems that align to our career goals. This isn't prescriptive scientific fact - but an approach to explaining the differences in responsibilities as one grows in their career. The time spent in each role may be accelerated, it may not be linear - and depending on the size of the organization they are with, the exact percentage breakdowns may shift up or down. As the first few years of our career is really about learning coding as a skilled trade. We're refining our skills and becom

Resume Triage!

Image
Having reviewed thousands of resumes at this point, I have been seeing a lot of the same mistakes over and over. What crushes me is when I find out how much some people have paid to get ... not-so-good ... advice. That's why next Friday (the 23rd), I am going to livestream with my good pal Taylor Desseyn and we're going to review resumes live and on-air. It'll be a fun (and free)  workshop where we cover what works & what doesn't. If you're brave enough to have yours reviewed, you can share us a link - if you want to do it anonymously you're free to change your info and experience before sharing. For context: I have more than 10 years experience in hiring tech jobs, and I've helped a bunch of others land jobs. Taylor's got about the same number of years as a recruiter - so he has a great sense of what many companies are looking for. Hope to see you soon! Join the event

Infinite Bridges

Image
He stepped into my office and closed the door. This was a bad sign. Any time one of your direct reports quietly comes it and closes a door, you know it's bad news. "What's up?" I say. "You're going to be mad at me." He replies. Yep. Bad news - but at least, this statement reduces my anxiety: I can infer some context; It's not personal, it's not health related, it's not a family-event. He's probably moving on... "Are you about to resign?" I ask, to cut the tension. "I...didn't expect you to ask so bluntly..." "You've lined up a new role though, right?" I reply, with the tone of a concerned parent. "Yes..." "Cool, tell me about it..." He proceeds to tell me the role, what it offers. "That sounds great, I can see how that would be a big move for you. Just so I make sure - you're committed to this decision, right? I mean, based on what you described, I'm assuming you'r

On Lego Bricks

Image
 Lego bricks are more than just bricks... This took a lot of lego pieces...

Coaching and Coding

Image
I've been coaching my daughter's soccer team for more 3 and a half years now - 7 seasons in total. We're just hours away from her first first game for the fall season and I've been struck with an epiphany: coaching is very much like coding. For the last month we've been hard at work making sure we cover the basic requirements, and wrap things up with test scenarios. As we grew more confident that we'd covered the happy paths, we focused on edge cases and broadened our test suite. We've made a lot of assumptions about the depths of what we should cover - but, given the set schedule and hard deadline, we did the best we could in the time we had. And now, we're ready to deploy into production. Or...maybe we aren't ready and we'll find out. But ultimately, as any good coder knows: if things fail, they should fail gracefully. When things go wrong, we'll be learn from it, build on the experience, and continue to iterate. We've set ourselves up

Don't Break the Chain

Image
A really good friend of mine once told me I'd be one of the funniest people he knows if I could just keep myself from making the many un-funny jokes I make. As is, the bad jokes made me about half as funny as I could be. The tricky thing is - because I'd argue all those jokes are funny - it's hard to know which jokes will "land" and which will cause groans. And I say all this because I think it equally applies to the posts - as great as I may think they all are, some of them never land. The trickiest part is when the popularity of a particular post is inversely proportional to the effort I put in. Despite the old addage about quality over quantity, I've found that whether it's jokes, posts, or some other hobby - creativity fuels creativity. It's easier to keep the momentum of the proverbial snowball when it's already rolling - and so I'm scared to ever stop. I guess that applies to just about anything too - dieting, exercising, reading, coding,

#SideHustle

Image
I see a lot of posts about having a #sidehustle - investing your time, energy and effort into a passion that unlocks your future. While I'm not against them, for now these two are my side hustle (and my main hustle.) When you become a parent they tell you the days are long, but the years are short. I can think of any better investment for these short few years. It's tough to balance the impact your professional can have on your family, with the impact your presence has. In my own case, I try to involve my kids in my projects. They see me struggle, they see me persevere, but they also see me have fun - but for the most part I am in their orbit.

LinkedIn Post Generator

Image
If you're struggling to come up with a quality LinkedIn post, I have the thing for you! If you're familiar with MadLibs, I've built one for LinkedIn, that I'm calling "LinkedLibs". LinkedLibs will generate engaging posts that resonate with your followers! Here's a quick sample: Want to gain more followers? Here's how I did it: Profile picture? 🤳 Make sure it has toys! Without toys, you're just another hasty penguin! 😥😢😖 In your heading, be sure to include statements about your collection of vintage robots! This tells people you're a beautiful person 🧑‍💼 who is happy to cry. 😃 Your banner should include a photo of you at a wedding or you in a hot-air balloon.  People take hot-air balloon pictures very quickly - in fact, did you know hot-air balloon pictures have been shown by anthropologists to make people feel satisfaction? As for a wedding - well - nothing says "humble", like a picture of you at a wedding. Finally, everyone lo

Code-mares

Image
When I used to code all the time, I'd go to bed and have code-mares. The same problem I was wrestling with would play in a stressful loop in my mind - but on some rare occasions I'd actually find the solution in my sleep. I'd wake up and, impatiently, couldn't get back to the keyboard fast enough. I was filled with excitement that a solved problem gives you. Recently I've been doing some mild carpentry at the house (building a mudroom bench and laundry cabinet). Carpentry, I've found, produces the same kind of feelings that coding can. I love it but I find myself frustrated when the right solution feels slightly out of reach. Suffice it to say, I had my first carpentry-mare. The dream made me realize I'd missed an important detail - and so, waking up, it was the first thing I had to do. That's when I realized a very important lesson about the difference between coding and carpentry: despite their similarities, coding is much much quieter.

Burning Down the House

Image
There's a parable about marriage - to paraphrase from memory: a wife is working hard around the house while her husband is in the living room reading the paper. As she races to clean, she notices the pot is boiling over, and the oven timer has gone off. She manages to get to it all, and over dinner she asks her husband: "How much do you love me?" and the husband says: "Very much." The wife presses: "What would you do if I was trapped inside a burning house?" and the husband says: "I love you so much dear, I'd rush in to save you." And she replies: "The house may never burn dear. If you wait for the big opportunities to show your love for me, they may never come. If you love me, help me with the little things." I think this parable extends beyond marriages - to friendships, but also our professional lives as well. How often do we wait until things escalate? How often do we wait until someone is really struggling before offering t

It's not delivery, it's deresume...

Image
If your career is a pizza, your resume is the box it comes in. Just about any box will meet the basic requirement of holding a pizza - but if you think more about what a pizza box can do, there's a lot more opportunity to tap into: First and foremost, it's the consumer's first impression. You see the box, before the pizza. The box creates expectations, it sets the tone. It can be unique and wildly different, or boring but familiar. Even though great pizzas aren't determined by the box they come in - if you're not familiar with the pizzeria a great box can grab your attention and pique your curiosity so that you want to find out more about the pizza. It's not delivery, it's deresume.

On This Day...

Image
On this day you looked at your Facebook memories to discover a database glitch which caused Facebook to provide you with someone else's memories. You can only assume they can see yours. You find the other person's memories fascinating, exciting, but ultimately would prefer to see your own. You wonder what they think of your memories. On this day, you looked at your Facebook memories to discover what you believe to be the same glitch. Only this time, it wasn't a database glitch. Turns out you had just grown older, matured, and couldn't relate to your past self anymore. You wonder what your past self would think of the new memories you're making. On this day, you looked back at your Facebook memories to dosciver a new glitch: Instead of posts from "A year ago" and "2 years ago" you find memories titled "A year from now..." and "Two years from now..." Curious, but nervous, you click on the memories to see what your fu

How to Pay Off Systems Debt

Image
Joined my pal Jakub Grajcar on Tech Leaders Hub to talk Systems Debt :

...yet

Image
It was our early start-up days - a year before the acquisition. The 6 of us were in a small conference room talking to a prospective client about the (really objectively awesome) software robotics & automation platform we'd built. My oldest brother, the founder and CEO, was leading the call. He was breaking down exactly how our customers were dramatically cutting costs in full transparent detail. And as the customer was thinking through how much they could save with our software robots, my brother concluded: "The only thing it won't do is pick up the phone and make a call." There was silence as the customer digested it all. And I, the Sr. Software Engineer at the time, invited only to provide engineering support for technical questions felt compelled to break the silence. I muttered (though still intentionally audibly)  "...yet." My brother glared at me. I smiled. We were generally pretty good at staying strictly professional at work - so while I knew I

Mouse Jiggler 2.0

Image
More than 10 years ago, we had a very specific case where we needed a computer to remain unlocked - despite activity on the computer, a weird configuration was keeping the activity from being detected. As a result, the computer would lock and unlocking it would take a lot of manual effort. On a whim, I printed out black and white "noise" and glued it to an external fan. Then I (crudely) wired the external fan to be powered over USB. It was crazy - but it worked. Fast forward 10 years, and I'm seeing actual "Mouse Movers" and "Mouse Jigglers" all over Amazon  that are designed almost identically (albeit theirs look much nicer...) I missed my calling...

Not Today

Image
I once read somewhere: "One day your parents stop carrying you. You never know when it happens, and they never know when it happens. They just put you down and never pick you back up..." Sharing as reminder: Work may be tough, your day may be frustrating, LinkedIn may be overwhelming. Or maybe it's all great. Whatever your story, don't let today be the last day you lift up your kid(s). 👨‍👧‍👦 Not today.

Thought Experiment: New Resume Sections

Image
When it comes to resumes, as subjective as they can be, it's important to stick to a commonly accepted standard. There's simple enough reason why: It makes it easier for the hiring manager to compare one candidate to another when everyone follows the same format and approach (that's why applications are so appealing.) All that being said, while I appreciate structural standards, I was thinking today: If there was 1 thing I could somehow make a standard for all resumes what would it be? Beyond the typical Professional Experience, Project Experience, Education sections - what is something missing? Resumes don't just need to provide the base level information. They can be used to drive the conversation forward so the interview doesn't just fall back to a typical Q&A. Resumes can give you something to talk about. So while I'm typically not in favor of straying from the standard and precedent, I think - if there was one thing I could add to the existing standard,

Facehuggers & MVPs

Image
The original sketch of the facehugger from Alien is a great reminder that your MVP does not have to be perfect to fully convey your vision - but if stakeholders confuse it for the final result, they'll laugh/cry/have an anxiety attack. MVPs need expectations management. I've had so many discussions with stakeholders (whether while freelancing or working in more corporate environments) on why an MVP is the right way to go. Someone unfamiliar with iterative delivery will still view the MVP with reluctance/resistance. That's where I'll typically break out the 3-week deliverable example: You are working on a project that can be delivered in 3 weeks; but you, being the Agile-wizard you are, realize you can break it into 3 logical areas that will each take 1 week to produce. You can either work on the whole project in a chaotic flurry of creativity and deliver the results in 3 weeks. Or you can work on the first chunk in 1 week, release it to solicit feedback while working on

Entry Level Job Hunter

Image
I made a fun little Snake game with a twist. I call it Entry Level Job Hunter... I think it captures what everyone chasing an #entryleveljob right now is going through. If you're in a spot where you can lend someone a hand, please do so. Change your badge to #OpenToHelping so you're easier to spot. If you're in need of a hand, don't hesitate to reach out! You can also play the game here:  https://alishahnovin.com/entry-level-job-snake.html

Gravity Hearts (Flash Experiment)

Image
In 2006, I wanted to build a gravity simulator in Flash. It worked fairly well - what started as Planets eventually became Hearts when I entered a Valentines Day themed coding contest in 2007. I didn't win the contest, but it was fun pulling it together - but also a learning experience: One thing I hadn't accounted for was how every object calculated the gravitational pull independently. This seemed like the right choice - it's how nature works, after all. Then I realized that, with my application being single threaded, by the time the last object in the collection would calculate the force felt from an earlier object, the earlier object was not in the spot from where the force was being exerted. Without getting into Einstein's theories on relativity, the resulting effect didn't look quite right. While I eventually solved for it, I'll intentionally leave the solution as an exercise for the reader. The exercise made me a better coder - not because of the code its

Interviews and Enthusiasm

Image
Interview advice from one hiring manager to another: Only include enthusiastic interviewers in the interview. Someone who had to be dragged away from their work and is treating the interview like a painful chore is not going to reflect well on your team. That lack of enthusiasm will rub off and candidates will not want to join your team. Enthusiasm is contagious. You don't need overly energetic cheerleaders - just people who are happy to step away from their work for the opportunity to involve others in that work.

Spreadsheet Resumes

Image
Excel and PowerPoint have a bad reputation for being used in ways beyond their original intent and purpose. And...in an on-going desire to exercise in the absurd, I've taken my popular  Resume Template  and created it in Excel. Because, who says spreadsheets can't make great resumes ? It actually makes formatting a lot easier, and because you can save to PDF ... well ...  they'll never know... (Though I'd argue, if you've made your resume in Excel - that should earn you some bragging points...) Check out my  Resume Template as a Spreadsheet... #JustBecauseYouCanDoesntMeanYouShouldButDoesntMeanYouShouldntEither

Feeling Accomplished

Image
Whenever I launch a new website, I'll proudly visit it about 50 times that day, reinspecting my work. I just installed a lighting fixture and switch in a closet... and keep going back to the closet and proudly turning the light on and off, reinspecting my work. It's important to take time and enjoy the sense of accomplishment.

Programming Motivation

Image
Be the change you want to change control. Whatever doesn't overflow your stack, makes it grow. How you were initialized does not define you. Every statement breaks at some point. Be the unhandled exception to the rule. Every 0 becomes a 1 eventually. Every merge starts with ME. #DadCodersDadJokers

Data Structures Preparation

Image
If you're prepping for your coding interview by reviewing data structures here's something to consider: Apply those data structures to real world scenarios. Build (small) projects and implement the structure. If you don't have time to build projects, look for those data structures in live examples and think through the implications and how you interact with them. Applying concepts beyond the theoretical space not only helps with retention, it helps you better understand the structure's value and limitations. This will better help you in an interview. As an example, it's one thing to create a simple tree structure that holds integers...But HTML is a "real world" tree structure you encounter all the time. JavaScript does an amazing job of hiding the complexity of that tree. There's the lovely document.getElementById , but elements also have a  .children array. But what about the document.all array. What's that about? Why is it helpful? How does t

Popular

Let's Clear Up The Ambiguity!

FAQs for a Software Engineering Hiring Manager

7 Steps to Writing an Amazing Resume

7 Steps to Building your Portfolio MVP

On Systems Debt