Lesson #6 - Career and Professional Development in Tech

Now that we've covered working as a team and collaborating on a technical level, let's talk about teamwork and collaboration on a more human level.

Let's start by debunking generalizations of people working in Tech perpetuated by popular culture. Frequently romanticized are the software engineers donning hoodies, sandals, and an automated email response application that they wrote themselves that uses machine learning and AI that allows them to go days, or even weeks, without actually having to respond to it themselves. Okay, that last one is pretty neat. But let's take a moment to debunk that generalization.

Software engineering, like any other profession, is just that -- a profession. From just the last section you've probably noticed that development is highly collaborative and user-centric. This means that you likely won't be working in isolation and must maintain a level of professionalism when communicating with peers, clients, or higher-ups.

On that note, a big part of an organization like TEKsystems is representing the brand well to both with clients and others within the company. A good mindset is to always remember that you're an ambassador of your team and organization.

When it comes to representing clients, the organization, and even yourself there are a few points that you should be aware of:

Perpetuating a Fun and Professional Workplace

You were selected to be a part of this program based on a number of reasons and you should consider this as a 3-month interview. Just like you would walk into an interview with your best foot forward at all times, you'll want to do the same here!

Remember that you'll be working with others throughout the entire duration of this program and likely afterward. Keep in mind that what you communicate and how you communicate effects not only the perception others have of you, but the overall atmosphere of the workplace. This means that you should approach touchy subjects such as politics and religion tactfully or even not at all.

Now keep in mind that we aren't trying to scare you. In fact, being playful and jovial can help to create a fantastic workplace. Just remember to keep jokes tasteful!

Communication is Key... What?

As mentioned before, Software Engineering is a profession just like any other. The operative term is "Profession". This means actively engaging with clients and the organization.

An easy way to think about active engagement is through communication! However, maintaining communication isn't always easy! In fact, you can think of it as a learned trait. But like with anything else, practice makes perfect. In any organization one of the main forms of communication is e-mail. Some e-mails may seem like spam or unimportant to you, but setting aside time every day to check and respond to relevant e-mails speaks volume about you and your professional development. If you receive 25 emails and 24 of them don't pertain to you at all but one email is from a high-priority client, it is absolutely worth wading through all 24 emails so that you do not miss that one email!

In addition to e-mail correspondence, you should always be aware of how you interact with people in passing. Keep in mind that anyone you pass in a hallway or even a coffee shop a block away from your office might be a potential client or co-worker! So remember to keep greetings polite and lighthearted, they may one day have the fortune of working with you.

In some cases, communication doesn't have to be verbal at all. A form of non-verbal communication is being aware of professional attire. Your attire can mean many things to the people you are interacting with. It may show them that you are organized, well-kept, or have an immense eye for detail! Conversely, it could also mean that you aren't particularly interested in impressing a client. This doesn't mean that you have to go to work with a suit every day (although that is ultimately up to the organization and client) but it's always a good idea to take a few moments to ensure that you are portraying to co-workers and clients that you care about professionalism.

Software Engineering is a Business Too!

Whether you are creating an application that is used internally or something client facing, you are being trusted to carry out work that will ultimately benefit the organization!

But more so than just application building, as an employee, you must remember that reporting to clients, managers, and your team is essential! This includes reporting on what you've been working on, what you intend to work on, roadblocks and limitations, as well as deadlines. And speaking of deadlines...

Difficult Things Happen, Stay Positive!

There will be plenty of times where you'll ship a buggy product that has a negative impact (let's hope it doesn't happen too often!). But when or if it does happen, how you address it is extremely important.

Let's say that the code you've written somehow passed through QA and made its way into production code. The worst possible thing you can do is to shy away from it and attempt to fix it independently and quietly! It's almost a certainty that other members of the team have already begun trying to figure out what went wrong and being transparent will save them and yourself time! But more than just time, it's important to communicate the bug or error and take ownership.

A good rule to follow whenever you make a mistake is to take accountability, communicate possible solutions, and learn from the mistake! By first taking accountability you are showing tremendous humility. You are reassuring your team that you are willing to learn from mistakes! And remember to stay positive. Every mistake is a learning opportunity. Do not fall into the trap of thinking that anyone is ever errorless and keep your mindset on continuous improvement.