Trades, Tech, & Engineering Careers Articles
Trades, tech, and engineering are booming, and you can get in on the action with our up-to-date advice on these fun and rewarding careers.
Articles From Trades, Tech, & Engineering Careers
Filter Results
Cheat Sheet / Updated 03-23-2022
Machining was the basis by which the first industrial revolution began, and is just as important a factor to the fourth industrial revolution currently underway. Without machined parts, there'd be no cars or airplanes for a quick trip to visit Aunt Mary. There'd be no cappuccino machines, no Large Hadron Collider, no late-night talk shows, no replacements for your tired knee and hip joints. Scholars rightly claim that manufacturing is the foundation of modern society, but ask anyone who's spent a few years on the shop floor and they'll tell you: Machining is the cornerstone that holds it all together.
View Cheat SheetCheat Sheet / Updated 02-25-2022
Students and professional engineers in the mechanical sciences know that mechanics of materials deals extensively with stress on objects — from determining stress at a particular point to finding stresses in columns. Knowing how to apply some important laws and graphic representations can help you tackle stressful mechanics of materials problems with ease.
View Cheat SheetCheat Sheet / Updated 02-23-2022
Welders of all skill levels should strive to improve their welding techniques and eliminate common weld flaws. A perfect weld every time is a lofty goal, but there are simple steps you can take and preparations you can make that will keep you from ending up with the kind of welds that need to be repaired or completely redone.
View Cheat SheetCheat Sheet / Updated 02-16-2022
Signals and systems is an aspect of electrical engineering that applies mathematical concepts to the creation of product design, such as cell phones and automobile cruise control systems. Absorbing the core concepts of signals and systems requires a firm grasp on their properties and classifications; a solid knowledge of algebra, trigonometry, complex arithmetic, calculus of one variable; and familiarity with linear constant coefficient (LCC) differential equations.
View Cheat SheetCheat Sheet / Updated 02-02-2022
As with any branch of physics, solving statics problems requires you to remember all sorts of calculations, diagrams, and formulas. The key to statics success, then, is keeping your shear and moment diagrams straight from your free-body diagrams and knowing the differences among the calculations for moments, centroids, vectors, and pressures.
View Cheat SheetArticle / Updated 12-29-2019
Programming interviews can be intimidating. Luckily for you, there are plenty of great websites for information not just about how to solve a wide variety of programming puzzles but also about how to find jobs and even get your résumé and cover letter written by certified professionals. It was hard to select only ten websites to recommend the job-seeking programmer, but these ten sites will give you the tools and information you need to succeed in your next programming interview. LeetCode The LeetCode website is one of the best places on the web to find and practice programming problems. All you have to do to view the list of questions is click the View Questions link on the home page to open the Questions page. What’s more, you’ll find problems to practice that are asked of interviewees at various large companies including Facebook, Google, LinkedIn, Amazon, and many others. Just click one of the companies listed in the Companies section on the right side of the Questions page. If you want to get the most out of the LeetCode site, sign up for a membership. LeetCode gives you the option of signing up for a monthly plan if you only want to use it while you’re looking for a job, or for a yearly plan if you want to use LeetCode as a resource for one calendar year. Currently, the monthly subscription costs $35 per month and the yearly subscription costs $159 per year. Interview Cake The Interview Cake website teaches you how to prepare for and succeed in a programming interview. If you need free information right away, the website offers a seven-day email course; just enter your email address on the home page. What’s more, you can get free information by clicking the Interview Tips link in the blue menu bar at the top of the home page. Click one of the topics in the drop-down menu to get more information about the topic. If you want to preview Interview Cake’s full course, click Full Course to the right of the Interview Tips and Glossary menu options. The free preview lets you look at sample questions in a wide variety of areas, and the bottom of the page contains links to programming problems posed by different companies. If you’re sold and want to purchase a course, Interview Cake offers two: a “crunch time” course that allows three weeks of access to site information for $149, and the full course for $249 that gives you one year of full access to the site. (Though the site also offers a $4,900 course with one-on-one coaching.) If you’re a student, you may qualify for discounted pricing. And both courses come with a money-back guarantee. Reddit Programming Forum Reddit is one of the largest community forum sites on the web, so you probably won’t be surprised that Reddit has one of the biggest online programmer communities, too. Just go to the Reddit Programming Forum to view the latest conversations. Scroll up and down the page to view the list of the most popular posts. Each post includes the subject title so you can click the link and view the entire post as well as comments left about that post. If you want to comment about any post or write a post yourself, you have to sign up for a Reddit account by clicking the Join button within the Community Details section to the right of the posts list. This site does come with paid advertisements within the feeds, but that’s the price you have to pay instead of real money. Before you post, be sure to read the programming rules and information within the Info section on the right side of the posts list. Read frequently asked questions by clicking the FAQ link just above the top of the posts list. Simple Programmer This popular programming blog is dedicated to teaching software developers soft skills and career skills in preparation for programing interviews. This website includes articles written by various programmers. To read an entire article, click the article graphic or the name of the article. If you want to write for Simple Programmer, move the mouse pointer over About in the menu bar and then click Write for us in the drop-down menu. The menu bar also includes options for you to purchase various products and get free courses and resources including career tools, programmer gifts, and more. When you click the About menu option, the person who created and maintains the site may be very familiar. Pluralsight Design Patterns Library If you want to learn design patterns backwards and forwards so you can use them in your daily development life, the Pluralsight website has a detailed library of design patterns. You can sign up for a 10-day free trial to view all the components in the library and see if it’s worth it for you. One enticement is that the library adds new patterns every month. After the 10-day free trial is over, you need to sign up for a Pluralsight membership, which includes access to the entire Pluralsight library. Currently, Pluralsight offers three different membership plans: A monthly plan for $35. An annual plan for $299. A premium annual plan for $499 that includes certification practice exams, interactive courses, and the ability to build projects. Pluralsight also offers memberships for business teams starting at $579 per user per year and enterprises starting at $779 per user per year. Hired.com If you live in certain metropolitan areas in the United States, Canada, and Europe, then you may be interested in joining Hired.com. This website is a great source for job-seeking programmers. It allows you to create an account for free and have companies apply to interview you for a job. As you scroll down the home page, you’ll see the metropolitan areas Hired.com serves, the types of roles and specialties Hired.com supports (including software developers), and a sample of how many different companies are looking for candidates on Hired.com. After you sign up, you need to create a profile much as you would create a résumé, but your Hired.com profile can also include photos of your favorite projects and links to your personal work. Hired.com also promises that your profile will be hidden to your current employer and past employers. 142 Resources for Mastering the Coding Interview The BetterProgramming blog hosted by the Medium blogging platform has an article that contains links to 142 coding interview resources. After you access the website, scroll down the page to see the entire list of resource links. Links are categorized in a variety of topics starting with a list of five classic coding problems and ending with a list of design patterns. Some categories include videos that tell you how to answer questions such as an Amazon coding interview question. Most links tell you what opens when you click the link such as a blog post or a video. And yes, there are indeed 142 links — as well as the five bonus classic coding problems at the beginning of the article — for you to view at your leisure. Stack Overflow Careers The Stack Overflow website is a popular community site for programmers, but you may not know that it’s also a place where companies post jobs and search for the right programmers they need. View the list of job postings by clicking the Find a Job button on the Stack Overflow home page or go to the Jobs page shown below. Above the list you can search for the job title you want by typing your search terms in the Search All Jobs box, and then click the Located Anywhere box to find the location where you want to find a job. When you’re finished, click the blue magnifying glass button and you’ll see a list of all jobs that meet your criteria. If you’re looking for a programming job and want employers to find you, Stack Overflow invites you to click on the Create a Developer Story button to the right of the list. A “developer story” is an online résumé so employers who are looking for you can find you more easily. However, you have to sign up for a free Stack Overflow account to create that story. So, sign up, set up your developer story, and let Stack Overflow make it easier for you to find the job you deserve. Slicker than a box of rocks. Interviewing.io If you’re nervous about the prospect of a programming interview, especially at a large technology company, check out the interviewing.io website. This site is great for programmers. It allows you to schedule free (yes, free) interviews with senior software engineers who will give you valuable feedback and tips for acing your real interview. Your free membership unlocks the ability to hold a mock online interview with questions about algorithmic problems, system design problems, and more from an engineer at one of a variety of large companies including: Google Facebook Microsoft Amazon Dropbox You choose the company you want to interview with and you’re anonymous throughout the mock interview. If you’re not sure about joining interviewing.io and/or want to see what an online interview looks like, you can scroll down the home page and click the Watch Some Recordings of Past Interviews link and see what happens in mock interviews. If you do well in the mock interview, you can “unmask” yourself so the interviewer can see who you are and you can set up an onsite, real interview with that company quickly. Slicker than a box of rocks. Information Technology Résumé Services Jennifer Hay is not only an excellent résumé writer — she was the first certified résumé writer in the United States —she’s also certified in career guidance, business intelligence, and information technology. Hay’s business, Information Technology Résumé Services (ITRS), is a great résumé writing service that services the United States, not just the Seattle area where ITRS is headquartered. ITRS provides résumé writing services for a variety of IT professionals including data specialists, IT administrators, and software developers. What’s more, ITRS provides free tips and articles as well as several low-cost and no-cost training videos. Even if you think you’ll have your résumé and cover letter produced by a local or regional company, why not compare what Hay has done for her clients with the sample résumés that other companies provide? It never hurts to compare other companies’ work with samples from one of the best résumé and cover letter writing companies around.
View ArticleArticle / Updated 12-09-2019
An interview is your opportunity to highlight your strengths. With programming interviews, this means showcasing your technical prowess and illustrating your ability to be a part of a team. You don’t want to inundate your interviewers with questions about their concerns with the company, so you should do some interview prep so that you have some answers already in your pocket when you come to the interview. The best way to learn more about the company’s concerns — and be able to then show the company your strengths and how those attributes can help put these concerns to rest — is to network with other employees in the company. Your research into the company will inform the types of questions you want to ask current employees either online in a private LinkedIn message or when you ask to talk to a company employee one-on-one during an in-person meeting or mixer. Some questions to ask include: What new hardware and software technologies are you looking into and what challenges is the company facing implementing them? What is the biggest issue facing the company right now and how is the company dealing with it? Why are you hiring a new programmer and how will the new programmer help you overcome these struggles? Your intelligence-gathering methods will pay off in two ways. First, you can tailor your cover letter and résumé so that they focus on the problem the company is having that you can help solve. Second, you can craft the messages you want to give to the interviewers during your mock interview and then have them at the ready during the real programming interview. For example, you can say something like, “I know you’re working on this new technology and here’s the experience I have with it and solving problems in this space. I can help you build and maintain the software and systems you’re working on. I can even help the marketing team with communicating the features so customers understand it.” Explain how you can help the team you’ll work with The information you gather about the company can also inform how you’re going to improve the team you’ll be working with. There are several ways you can communicate that before or even after you submit your cover letter and résumé to the company: Create a website that shows off your work. If you’re not into web design, there are plenty of free and low-cost website builders such as Google Sites and Wix that can help you get started. The website doesn’t need to be involved — just a place to show screenshots and give brief descriptions of what you did. Don’t forget to add information about apps you created or helped develop if you have them, and be sure to add links to your related pages. Start a programming blog. One of the pages of your website can be a blog where you can write about programming topics and especially about how you solved problems with teams at another company. (You may need to tweak the parameters a bit to avoid transmitting confidential information from the company you worked for.) There are plenty of blogging platforms such as WordPress and Medium that help you set up a simple, attractive blog. Consider creating a YouTube channel. Record videos to display on your channel that show people how to program and how to become better programmers. The videos don’t have to be very long, either. If you have a good webcam that has 1080p resolution and a good microphone, you can find free and low-cost tools online to record good-quality videos such as Free2X Webcam Recorder and Loom. When you maintain a website, blog, and/or YouTube channel, be sure to update them regularly. If you don’t, and one or more interviewers notices, you’ll need to explain why you haven’t been updating your online assets. For example, you could say that you were focused solely on improving one of your apps in response to customer requests so your customers could have the new and improved version as soon as possible. Demonstrate how you fit into the company culture If you’ve read any stories in your LinkedIn news feed or any business websites, you’ve probably noticed that company culture is a big deal with any business. When you network with company employees and you talk with interviewers, don’t forget to ask about and/or pick up on clues on what the culture is like and how it will determine who the interviewers recommend hiring. For example, there may be people on your team who play a specific online game and they want all team members to be on the same wavelength by playing the same game. If you find out during your networking process that people on the team love to play a specific game and you don’t play it, start playing the game and become knowledgeable. If you don’t know about the game until one of the interviewers asks you if you play it, tell the truth and say you don’t, but that you’d love to learn how to play it. Showing that you’re interested in the same things as your potential team members and are willing to connect with them could be what gets you the job offer. Another company may want people who like the outdoors because employees bond by doing a lot of outdoor activities together during the workday, such as participating on sports teams that play on weekends, or holding specific outdoor events to foster connections within and between teams. If interviewers learn that you like being outside, too, then they’ll talk with you about all the outdoor activities they have available for employees. If you respond that you’re very interested in that, you’ve taken another step toward getting hired. If you discover that Averagenaut SpaceCo does things you’re not interested in doing, such as playing an online game constantly, consider withdrawing your application for the job. Being the odd one out on your team could lead to you finding a new job sooner rather than later. You can spend your valuable time working for Spaceman Spiff’s Rocketry where you feel comfortable, and Averagenaut can find another candidate who fits them. Offer examples that back up what you say about your strengths As part of telling stories about your technical chops during the programming interview, you need to include examples from your past experiences that show how you learned more about what customers want and how you can best serve them. These experiences can be at different companies and/or your experience creating software on your own (such as smartphone prep). Even if you’re not going to be interacting with customers directly, showing that you’ve dealt with customers in the past and have at least some knowledge of what they’re thinking will only show off more of your value. After all, a programmer who’s customer-centric will put out a more usable product that will bring more money and customers to the company. What kind of examples do you need to come up with? Each example has to show some kind of positive outcome for the company and/or the customer you worked for. Here are some ideas to get you started: How you helped your team improve its productivity and by how much. How one or two times you worked long hours to ensure a product shipped on time . . . or even ahead of time. How your technical skills were key to finishing a software project that made the company money. How you fit into the company culture by participating in different events the company put on so that employees across the company could connect with one another. How you took advantage of company training that turned into an increase in your own productivity, which lifted the productivity of the entire team. Once you get your brain thinking about examples, you can list those in your notes you bring to your programming interview. You don’t need to write a detailed description in your notes — thinking about examples will (or at least should) jog your memory about what happened during every situation. Then you’ll be able to talk about them off the top of your head and enjoy the looks of amazement on your interviewers’ faces.
View ArticleArticle / Updated 12-09-2019
It may seem logical that you should find out what kind of questions the company will ask you before your programming interview so that you’ll be prepared. Most people, though, ignore this opportunity because they’re . . . optimistic that they can answer any question an interviewer asks. Don’t rely on your ability to think on your feet. Definitely take the time to do your interview prep. As a programmer, though, you’re probably more thorough in everything from getting the code just right to getting your interview down cold. Depending on how large the company is, you may be interviewed by the founders, a small number of people (like the entire programming team), or a cross-section of people from the team you’ll be working with, folks from human resources (HR), and perhaps even executives such as a chief information officer (better known by the acronym, CIO). All of these people will search online to find a list of questions to ask you about your programming skills. Your interviewers will also want to know about you as a person, so they will also ask the simple “soft skills” questions they’ve been asked in interviews before, such as where you want to be in five years, as well as look up similar questions to find out how you’ll fit in the company’s culture. Search online to find the top programming interview questions To be adequately prepared, you should think like your interviewers and look up the potential questions on Google to find out what kinds of questions you may be asked at your programming interview. For example, if you’re being interviewed for a Java programming position, it’s easy to find websites that contain a list of Java questions as well as the answers. Here are some common Java questions you’ll find and you should know the answers to: What is JDK, JRE, and JVM? Why is Java not 100 percent object-oriented? What are constructors in Java? What is the JIT compiler in Java? What is the final keyword in Java? What is constructor chaining in Java? What is polymorphism? What are the different types of inheritance in Java? What is a copy constructor in Java? What is an interface in Java? Don’t just give back simple answers to the programming questions you receive, because your interviewers want to know that you understand the answers. That means your answers should be followed with an explanation of why the answer is correct. Doing some interview prep work will help with this. Just reading the questions and understanding the answers aren’t enough, though. Our brains are hard-wired to remember things if we write things down. So, get out your pen and paper and write down the questions as well as the answers you find from one or more websites. How you write them down so your brain remembers them is up to you, but the physical act of writing with pen (or pencil) on paper is how our brains work. Don’t believe us? Just Google remember by writing down and see all the results that show why writing down is better than reading and even typing information. It may seem unnecessary, tedious, and even painful to you to write things down, but you can put your brain’s improved performance to work in your mock interview. You’ll be amazed at the results of this interview prep technique. How to answer soft skills questions in programming interviews If you’ve participated in any programming or job interviews, then you know about some of the standard “soft skills” questions interviewers ask to get a better idea of who you are as a person. You can get a soft skills question at any time from your interviewer or anyone on the interview panel — even a fellow programmer. Just as with programming questions, you need to search online for the types of soft skills questions interviewers may ask you to be fully prepared. Here are some of the most common questions that are asked and how you should answer them. Where do you see yourself in five years? The correct answer is to talk about being a part of the company, growing professionally within the company, and actively contributing to the company’s growth. With a little interview prep, you’ll be set on this question. None of your answers to this question should ever be about you planning to leave the company, such as, “I want to get a better job somewhere else.” If you say that, you’ll be dismissed immediately and then you’ll need take some time off to discover what it is you really want in life. What is your greatest strength and greatest weakness? The biggest problem with identifying your greatest strength is choosing the answer you want to use. If you can’t figure out what your greatest strength is, think about the strengths you showed at work and/or school from your past experiences. Then think about which strength you think the company would benefit from the most. The trap you can find yourself in when answering the question about your greatest weakness is trying to frame another strength as a weakness. For example, you might say, “My greatest weakness is that I’m a perfectionist. I like to do things perfectly.” Being a perfectionist doesn’t show the vulnerability required to be a weakness. Instead, consider a similar response about perfectionism, but add some vulnerability. For example, “My greatest weakness is that I tend to be a little bit too obsessed with things, and sometimes I cannot complete a project, even though it’s already good enough. I might spend too much time working on a small detail, polishing something that doesn’t need to be polished.” When you give an example of a weakness that tells the interviewers it’s something you need to work on, follow up by telling them how you’ve worked to turn that weakness into a strength. For example, you can say, “Over the years I’ve learned how to turn this weakness into a strength. What I’ve learned is that my attention to detail and my tendency toward perfectionism can be used in the right places to make sure that things are done properly. I’ve learned over time to know when things are good enough and I can move on. This has really helped me become a better developer.” How and why did you leave your last job? Answer this question not by bad-mouthing the previous company, your bosses, and/or your coworkers. Always be positive about your previous company. Do a little interview prep and brainstorm some possible responses for this interview question. Some reasons you can use for leaving your last job include: I felt that my professional development had stalled, and I wanted to take some time off to grow my knowledge and contribute to the programming community by taking advantage of speaking and writing opportunities. I needed to take time to get away from the computer screen for a little while and spend time with my family and some other important projects I needed to finish before I could return to programming. I had some family issues that needed my attention, but I still managed to keep my feet in the programming waters by adding posts to my blog and answering questions on Stack Overflow. These sample answers are honest, and talk about you and your situation at the time instead of denigrating others. How do you deal with conflicts in your job? This tough interview question is also one you want to answer without saying anything bad about anyone else. Your older family members were doing a form of interview prep when you were young by saying, “If you can’t say anything nice about someone, don’t say anything at all.” Answer this question by saying that in some instances you realized you were wrong. Perhaps you said the wrong thing during a conversation, didn’t say anything when you should have to resolve the situation, or didn’t ask a question you should have asked. In this case, tell the interviewers how you learned from the situation by learning how to change your behavior: You learned to listen more clearly, think better on your feet, and talk with the other individual instead of withdrawing. The interviewers aren’t looking for you to show that you’re perfect. If you did, the interviewers may think that you’re being dishonest and/or hiding something. Instead, they want to know that you’re a human being and that you’re a better person now because of your past experiences. Showing how you’ve grown personally over the years is even more critical if you’re applying for a higher-level position such as a senior-level programmer or a manager of a team, where maturity at this stage of your life is an important asset.
View ArticleArticle / Updated 12-06-2019
Hopefully, your programming interview ends with a job offer. Once the company gives you a salary amount or benefits package to consider, you need to begin job negotiations and give a counteroffer — even if the company’s offer gives you more than what you expected. Why? A company that’s invested enough time and effort to interview you and make an offer is always going to come up a little bit low and leave itself a little bit of wiggle room to negotiate the job details. Always presume the company is experienced with job negotiating with potential employees and will expect you to provide a counteroffer that’s a little bit higher. You don’t want to leave any money on the table just like you wouldn’t knowingly leave a public place without your wallet that has a couple thousand dollars in it. Giving a counteroffer You may be afraid to negotiate the job details because you think you’re going to lose the job, especially if this is the job you dreamed of or you need a job right now. Here’s our counteroffer for your brain: You need to understand who’s the most important person in the conversation. (Yes, you.) If you’re still not convinced, try reading the book, Never Split the Difference by Chris Voss and Tahl Raz (HarperBusiness). After you read it, you’ll understand why Voss and Raz subtitled the book, Negotiating as If Your Life Depended on It — because it does. It’s also natural to think that if you counteroffer with a number that you think the company will see as too high, then it’s more acceptable to meet in the middle of what the company has offered and what your desired highest salary is. Then the company representative will counteroffer with an amount that’s lower than what you think the middle is. Congratulations! You’ve just lost a lot of money. So, counteroffer with your high amount. The company representative likely expects that, too, because he expects your counteroffer will come with a little wiggle room, and you’ll be willing to accept a somewhat lower salary than your counteroffer amount. In the worst-case scenario, the company representative won’t negotiate the job at all and will say that the offer is final. Then you’ll have to review the rest of the company’s proposed benefits package and see if you can negotiate one or more of those benefits. Making counteroffers and getting more money won’t just improve your life and livelihood right now, but also in the future as you grow with the company. After all, you expect to get raises at some point, so you need to remember that raises are usually based on the percentage of your pay. If your pay is higher, then your raises will be higher, too. What’s more, if you’re going to get another job in the future, then the higher pay from your current job will likely lead to an even higher starting salary at your new job. Negotiating more than salary The first job negotiation session is usually about salary, but that’s only one of the cards in the company’s hand. The rest have to do with other benefits the company is offering. These benefits could offset a lower salary if you get more flexibility in your job and more opportunities for making a lot of money if you think those opportunities will come in a reasonable amount of time. For example, you can make counteroffers about a signing bonus for joining the company, the amount of time off you get, the 401(k) matching amount, and how many shares of company stock you get. There may be other options in the package to negotiate. If the company is a startup, you may be able to negotiate an ownership stake when the company meets clear financial milestones. You could negotiate your roles and responsibilities. If there’s the opportunity to work from home, you can negotiate how often you can do that. You can even negotiate the equipment the company will provide you to get your job done. Avoiding pitting companies against each other during negotiations It’s possible you’ll be negotiating a job with one company knowing that you already have one or more offers from other companies. This is one card you don’t want to play because it makes it very easy for the company to withdraw its offer. So, play it straight. Don’t respond to the company’s offer by saying, “Hey, I got a higher offer from another company that has also offered me a job.” The company representatives will likely ask you what that offer is. Tell them and they’ll counteroffer with a slightly higher offer than what the other company is offering, and you’ll be prevented from getting the highest amount possible. If you don’t, and they have to guess, then one of two things may happen. First, you may get a much higher offer than what you were expecting, but they’ll still get a bad vibe about you and they may not be as willing to negotiate other parts of your benefits package. Worse, people in the company will talk about it, and you don’t want to come into a new job with people giving you the side eye. The other result is that they’ll see you as unprofessional and possibly lying to them, withdraw their offer, thank you for your interest, and escort you from the building. If you want to mention that you’re entertaining multiple offers, you can do so at the end of the job negotiation. You don’t have to tell the company representatives about the other offers or even the companies’ names because you should always presume that company recruiters talk to each other. That’s especially true if you’re looking for jobs in the same geographic area, and those recruiters can ensure you won’t play cards with them anytime soon. Walking away from a job offer The best negotiators are those who are willing and able to walk away. The company you’re interviewing with is certainly willing to walk away if it can’t get you to agree because it likely has second and third choices for the job. The best way to look out for number one (yes, you) is to ensure that you’re interviewing with multiple companies and, better yet, have at least one other offer from another company. If you’ve applied at a number of companies and interviewed well with at least a few of them, it’s likely you’ll have the ability to walk away from the company’s table, too. What’s more, you should have some side projects that you’re working on so you’re still generating income if you have to walk away. You don’t want to be in a situation where the company you’re negotiating with is the only one you’ve applied to and interviewed with. In that situation you’ll be more desperate to take any offer whether you realize it or not. If you decide to walk away, do so in a respectful way — don’t be angry, threatening, or plain old nasty. You can say, “Hey, this isn’t what I’m looking for. I’m sorry we couldn’t come to an agreement, but this isn’t the right opportunity for me. I’d love to work for you, and I’m sure we could do great things together, but we can’t agree about the job benefits and that’s okay.” Being polite and respectful will leave the company representatives still thinking highly of you — so much so that they may decide to continue job negotiations. They may even offer you more because you’re head and shoulders above their other choices, or their second and/or third choices don’t work out. What’s more, one day in the future, this company may invite you to apply for a different job with you specifically in mind, which is the best kind of job offer to get. Then don’t be surprised if you end up with a better hand than you had during your first card game.
View ArticleArticle / Updated 12-06-2019
Your phone screen and/or in-person programming interview will likely include some non-technical questions — better known as ones designed to test your “soft skills.” You need to prepare for these questions ahead of your programming interview because if any of them take you by surprise, they will harm (or end) your ability to get hired. Though you don’t need to give the exact answers included here they should get you started as you put together your responses for your phone interview, mock interview, and your actual programming interview at the company. What is your greatest strength? You should answer this soft skill question in an unabashed manner — that is, be very clear about what your biggest personal strength is. If you aren’t sure, think about the one thing you’re most passionate about. What’s more, talk about how you’ve used and demonstrated that strength. Talk about how you think that strength is rare, unique, and something that helps you stand apart from the crowd. Most important, tell the interviewers how you’ve used that strength to become a better software developer. It doesn’t matter what your greatest strength is if it isn’t valuable to your employer. What is your greatest weakness? This is a classic question designed to trap you. You have to avoid giving an answer that is actually a strength and pretend like it’s a weakness as well as give an answer that’s so transparently debilitating that your interviewers decide you shouldn’t be hired. For example, don’t say that you’re a perfectionist and so it’s a weakness because you want everything to be perfect. Interviewers can see right through that kind of answer and it will make it appear as if you’re trying to deceive the interviewers by not giving them honest answers. On the other hand, if you say that you have mental issues and you’re taking medication for it, then you’ve entered the TMI (too much information) zone and your interviewers will be persuaded that you shouldn’t be hired. (Sadly, mental illness is still stigmatized in society.) So, think of a real weakness that you’ve used to make yourself better. One example is to say that you’re someone who always finds one more thing to fix and so in the past you had problems releasing products. Then you can follow up by saying how you’ve learned from that weakness by writing down what needs to be finished for the product to be released at the beginning of the project and how that approach made you a more effective software developer. Where do you see yourself in five years? This question is designed to disqualify you as a candidate. It’s easy to respond to this soft skill question by saying, “I don’t know.” Though that’s an honest answer, it’s not a good one. You may be dismissed from the interview if you’re even transparent about your intentions such as you’re going to be working in a different job because you expect you’ll hit a wall in your development within the next five years. Instead, you need to answer the question by telling your interviewers that you’re going to be growing professionally along with the company and tell them how you’re going to do that For example, you may tell them that you’re going to improve not just your programming skills but also your mentoring skills. Then you can say you not only want to be the person on the team people come to for information or advice, but also you want to make the team the best it can be in the next five years so managers can be confident the team can produce any product for customers. In sum, your answer needs to reflect that you know what you want your direction to be within the company — even if you say that you want to be the team manager, department manager, or part owner. Why did you leave your last company? Here’s another question designed to disqualify you because you can answer it in the wrong way very easily. The best way to answer it is to always put a positive spin on your experience. A quick way to take yourself out of the running is to say you hated the job, you hated the boss, and/or you were fired. If you can’t say anything nice about your job or your boss, you can still give interviewers one or more good answers: The job culture wasn’t the right fit. You recently moved to this area. Your skillset wasn’t being used fully and you felt that you didn’t make the best contribution you could. You’re looking for new opportunities and challenges. You wanted an opportunity to work with the technologies that the company you’re interviewing with is using. When you mention you want to work with new technologies, this is a good time to say how you’ve been learning these new technologies and applying them such as in a side project or talking about them in your blog. The moral of this story is to be honest in your answers to these soft skill questions but don’t reveal anything negative. Name a time you got into a conflict with a coworker, and how was that resolved? This is another question to test your maturity or, to use the vernacular, get a sense of your emotional quotient (EQ). Most people have had some kind of conflict with a coworker, no matter how small, because it’s inevitable when you’re working with different personalities in one location. Even if you’ve been working on your own for a while, you’ve probably had an issue with a customer either in person, on the phone, or in an email message. No matter what conflict you think of from the past, you need to spin it in a positive light. Here’s how: Don’t talk badly about your coworker or the person you were working with, such as a customer of your app who yelled at you. Don’t tell the interviewers that the other person was an idiot or that he or she made a mistake. Tell the interviewers how you resolved the situation is a peaceful way. Explain how you learned how to see the other person’s point of view. Discuss how you realized you were also wrong and how you grew from that realization. Say how the experience helped teach you how to better manage conflict. What the interviewer is looking for with this soft skill question is how both you and the other person came to a resolution that was beneficial for the company overall. What did you like about your last job? When you prepare to answer this question, think about the things that will mirror the job you’re applying for. If you previously worked for a small company and you’re applying to work at a big company, it won’t make sense if you talk about how you liked the energy of working for that company. The interviewers will think that you’re not going to be happy at the job you’re applying for, so they’ll wonder why you’re applying for the job in the first place — and that if you’re hired, you’ll leave quickly. Instead, talk about positive things in your last job that you enjoyed. Those things can include your boss and/or your coworkers who had personality traits and interests that you’ve noticed in some of the interviewers during your interview. You can talk about the work environment if your interviewers note their environment is much like the one you had at your last job. And based on your review of the job description, you can note that in your last job you used the same technology that you’ll use in the job you’re applying for, so you’ll be a perfect fit. What did you dislike? This is another one of those “don’t say anything negative” soft skill questions. Your interviewers want to see if you’re a negative person when you have a chance to be, but don’t take the bait. Instead, you can say that there wasn’t anything in particular that you really disliked about your last job — you were happy, you enjoyed working for the company, and you enjoyed your coworkers. After you talk about the people and environment in your last job in glowing terms, make what you dislike seem like it’s not a big deal. One explanation could be, “I just felt like my talents weren’t being used to the fullest. I thought I could do a lot more for the company but there wasn’t the opportunity.” This answer also doesn’t include the word “challenge,” which can be a red flag word for interviewers because they may get the impression that if you’re not challenged enough in your job, then you’ll leave sooner rather than later. Why do you want to work for us (or this company)? Answering this question is a good opportunity for you to show that you researched the company before you came in for the interview. Depending on your company research, here’s how you can respond to this soft skill question: Talk about the history and culture of the company, such as, “I really like the founder’s mission and how he started out working in his garage just like I did. I aspire to fulfill that mission.” Tell the interviewers how you can make an impact and how your skillset perfectly matches what the company is looking for. Explain how you’re excited to raise the bar on the team to the next level and how you can help the programming team do that. Your answers need to show that you really know both the job and the company, and that you’re not just someone who would take any job — you will only interview for and work for a company that has high standards. That will tell your interviewers that you have high standards, too, and will help persuade your interviewers that you’re not only worth hiring, but you’ll contribute to the high standards set by the company. Why should we hire you? This one is a true test of your soft skills. You need to frame your answer to this question in terms of what’s valuable to them. Don’t talk about why you want the job or how it benefits you. Instead, talk about the benefits you’ll give the company after they hire you. This is the time to brag about yourself a little bit — that you’re the best candidate for the job because you’re really skilled at the programming language or technology, talk about your accomplishments, and talk about how you continually show leadership in the software development community through your online resources. This can also be the time that you take your self-published book out of your briefcase to show off. Before you start to annoy your interviewers with all your swagger, switch gears and tell about how you can make the team better. That is, you’re the kind of person who figures out what needs to be done, figures out how to do it, and gets it done. You should note that you’re a low-maintenance employee, but you’re not just someone who will go off in a corner and work on a job — you’re also great at working with teams to get the job done and spread the credit around. Why are you the best candidate for this job? Interviewers will ask this question right after why they should hire you, and this is not a time to be humble. If you’re humble (or, worse, self-deprecating) then you’re blowing the chance to describe all your best qualities. So, follow up on your previous answers about why you should be hired by showing and giving an overview of what you’re doing: You have a blog that you update regularly. You have a YouTube channel that not only contains a number of instructional videos but also your video résumé and vlogs — and you add more content regularly. You post new audio podcasts frequently. You’re written at least one self-published book. You’re commenting and answering questions from fellow programmers on software development websites including GitHub and Stack Overflow. You’ve spoken at local developer, business events, and/or large developer conferences. You attend developer conferences as often as your schedule allows so you can continue to make new connections and learn about the latest trends. Then you pass along what you learned from those conferences to your readers and viewers. If you’ve done most — if not all — of these things and continue to work on many of them (such as writing blog posts and producing videos), then you’re going to command the interview room. Now you can use that position to show interviewers how you’ve applied your expertise in past jobs: Tell how you’ve helped other companies in the past that you worked for. Show that people who work with you now and/or have worked with you in the past who have written recommendations endorsing you. Explain how you communicate your points effectively. Discuss how you’ve made projects successful. Describe you’re a good team player and enhance the performance of the entire team. Talk about your leadership qualities and how you’ve influenced people. You may think of other qualities that you want to tell the interviewers, but you get the idea: This is your opportunity for you to shine and leave stars in your interviewers’ eyes — and you only have a short amount of time to do it. Make every second count. When facing non-technical questions in a programming interview, you’ll be best equipped to answer if you have performed background research on the company so that you can answer in line with the company’s culture and expectations.
View Article