12 votes

Tilderinos with experience in job-hunting/hiring for programming roles: What am I doing wrong?

I'm an undergraduate electrical engineering student. My degree has a mandatory requirement for me to secure one more 4-month internship before I can graduate. I'll either need to find one for summer (May-Aug) or for fall (Sept-Dec). If I can't find one, then I risk dropping out of my degree. I have a lot of student debt, so that would be a serious problem.

I think I'm doing something wrong in my job search. I have a feeling I'm not applying to the right jobs. Or, I might be framing my skills/experiences the wrong way. Or, maybe now is just a bad time to be applying for internships?

I would really appreciate it if you could tell me what you think I could be doing better. Feel free to be brutally honest... I feel like I've been given an opportunity (STEM degree) that I'm squandering, and I want to be whipped into shape. :(


Experience

  • 3rd-Year Courses: Broad ECE curriculum (circuit theory, power, signal processing, control theory, embedded systems, EM wave theory, communications). No significant projects (theory only). Many assignments done in C or MATLAB. GPA was B-ish territory, if that matters.
  • 4th-Year Courses: Specialized in signal processing and data analysis (audio processing, image/video processing, computer vision, data mining, machine learning). A handful of projects using MATLAB or Python (OpenCV, numpy/pandas/etc., PyTorch). All of these were A+'s, if that matters.
  • Internship #1: I configured DSP units used to control sound systems in pools, arenas, hospitals, etc. The DSP units typically used proprietary visual programming environments (drag and drop components), with maybe some custom lua/python scripting functionality if I was lucky. It doesn't feel transferable to say "I have a Level-2 certification from QSC to design Q-SYS systems."
  • Internship #2: I did IT helpdesk support in a team for a place with 1000+ employees. Technical phone calls, imaging PCs, equipment tracking, addressing various tickets. Not much here feels transferable either.
  • Internship #3: I designed a video processing algorithm in a computer vision research lab. It tracks birds and detects when certain flight behaviors have occurred. I used Python (OpenCV, scikit-image, numpy/pandas/etc.) and git to manage my own progress. I wasn't on a team so I have no experience with handling merge conflicts, CI, or anything like that.
  • Part-time work #1: I deployed a deep learning model developed in MATLAB to perform inference on a mobile device. This involved converting the model from ONNX to the TensorFlow Lite format. I also turned my work into a Jupyter notebook so I could share it with my lab colleagues.
  • Course projects: (1) In one course, I am taking a recent CVPR paper implemented using MXNet and re-implementing it in PyTorch. (2) For my Honours Thesis, I am training a CNN to classify different bird species using PyTorch. I'm then going to integrate it into the codebase for the algorithm designed in Internship #3. (3) I implemented an audio noise reduction algorithm in MATLAB. (4) I tried to implement a video processing algorithm to transcribe chess matches in Python. (5) I compared different block-matching algorithms for video compression in MATLAB.
  • Technical extracurriculars: I have no club experience and have not participated in any programming competitions.
  • Personal projects: Nothing notable. Some small things here and there that never went anywhere because I had a hard time balancing my studies.

Job search strategy

Since most of my recent experience is related to computer vision (image/video processing) and data analysis (feature engineering, machine learning) I have been trying to apply for Data Science/Data Analysis internships.

I go to indeed.com and linkedin.com, "Keyword OR" all of the languages/libraries/frameworks I have used, then submit my resume to the ones I find. I have submitted 10 or 20 applications. I also sometimes try to cold-email companies in my town. I want to stay in town because I don't want to leave my friends, so I would do remote work too. But, I would leave if it was necessary...

I would be OK with any programming job. I don't have experience with many of the tech stacks I see for various programming jobs, though. So I don't apply, because I assume a true software engineering major would get the job over me.


What could I be doing better?

EDIT: Anonymized resume here: https://i.imgur.com/V8s4XLJ.png

EDIT2: I already regret posting. This is too much information for me to process, and I don't know how to convert everyone's varied opinions and perspectives into an actionable plan. I feel overwhelmed and am shutting down trying to read your comments. I don't know what to do. But feel free to keep replying if you'd like.

12 comments

  1. [3]
    stu2b50
    Link
    For one thing, uh, unfortunately I don't think right now is a great time to be looking. Summer internship hiring is nearing the end anyway, but with recent circumstances most are either going to...

    For one thing, uh, unfortunately I don't think right now is a great time to be looking. Summer internship hiring is nearing the end anyway, but with recent circumstances most are either going to be remote or just cancelled.

    I'm guessing almost everywhere is freezing hiring until this clears up. You can't even onboard people in-person right now. Forget on-site interviews.


    For one thing, post anonymzied resume. If you're not getting interviews, resume is why.

    Secondly, apply to many more places. Tech applications are incredibly short and you can get one done in a minute or two. It's not uncommon to hear of people applying to 100-200+ places, because why not? That's like just 2-3 hours of work.

    10 votes
    1. [2]
      vivaria
      Link Parent
      That's what I thought, heh... I'm just hoping that my university will be lenient and give me more leeway to complete my degree. I have already applied for a degree extension before. But, this...

      For one thing, uh, unfortunately I don't think right now is a great time to be looking. Summer internship hiring is nearing the end anyway, but with recent circumstances most are either going to be remote or just cancelled.

      I'm guessing almost everywhere is freezing hiring until this clears up. You can't even onboard people in-person right now. Forget on-site interviews.

      That's what I thought, heh... I'm just hoping that my university will be lenient and give me more leeway to complete my degree. I have already applied for a degree extension before. But, this seems like a valid reason to extend a degree even further.

      For one thing, post anonymzied resume. If you're not getting interviews, resume is why.

      I've edited the OP, thank you. :)

      Secondly, apply to many more places. Tech applications are incredibly short and you can get one done in a minute or two. It's not uncommon to hear of people applying to 100-200+ places, because why not? That's like just 2-3 hours of work.

      What would I even do if I got an interview? I don't know webdev or full-stack anything or algos/data structures. What would I even say?

      Which is why I wanted to post... I think my anxiety is clouding my judgment. I think that I probably misunderstand the expectations for undergraduates. I don't know what I am actually qualified for.

      2 votes
      1. stu2b50
        Link Parent
        I took a quick look at the resume. For your internships, use more "action" words and numbers (pull it out of your ass if you must). Stuff like "increased blahblahblah efficiency by 30%". Spend...

        I took a quick look at the resume. For your internships, use more "action" words and numbers (pull it out of your ass if you must). Stuff like "increased blahblahblah efficiency by 30%". Spend more time talking about the effects of what you did, rather than what you actually did.

        What would I even do if I got an interview? I don't know webdev or full-stack anything or algos/data structures. What would I even say?

        Oof. For one, I would start doing some leetcode problems. You don't need to go full /r/csc, but like at least be able to do the easy-med level questions.

        Read Cracking the Coding Interview.

        And be confident. Regardless of reality, walk in like an equal to the company interviewing you; they need you. You're not begging for a job, they're begging for you.

        In my experience, I've done best in interviews after I've already gotten an offer, and can do other interviews with full confidence.

        3 votes
  2. patience_limited
    Link
    If your school has an internship requirement, start with your program's and your school's career offices and job boards. Even if there's nothing suitable, get it on the record that you're using...
    1. If your school has an internship requirement, start with your program's and your school's career offices and job boards. Even if there's nothing suitable, get it on the record that you're using available resources to seek work. That can help if you have to plead exceptional circumstances to graduate.

    2. There's actually a lot of work available for various subsets of your skills. Start by looking at careers pages for companies in the industries you'd like to work in, before diving into the pointless, unsearchable wells of hate which comprise most job aggregators.

    3. My rule of thumb is, if you've got 2/3 of the qualifications listed, go ahead and apply.

    4. Start looking at temporary and contract-to-hire projects, because the entry criteria are a little more relaxed.

    5. It's a good idea to submit resumés and cover letters tailored to the specific job you're applying for. You can emphasize the degree to which you match, rather than having an HR drone try to figure it out from a pile of skills. Generally, they won't bother.

    6. HR departments are overwhelmed right now - sick leave, remote work, layoffs, and everything else they're dealing with have higher priority than hiring. Be patient, polite, and persistent.

    5 votes
  3. [3]
    joplin
    Link
    If I were given your resume, my first question would be, why did you get a degree in EE if you wanted to be a programmer? Wouldn't a computer science, or at least computer engineering degree have...

    If I were given your resume, my first question would be, why did you get a degree in EE if you wanted to be a programmer? Wouldn't a computer science, or at least computer engineering degree have been more appropriate? My (admittedly limited) experience of dealing with code written by EEs leads me to believe that they got as good an education in programming as my CS degree gave me in designing circuits. (Which is to say, the bare minimum necessary to get the concepts and move on to the next thing.) I see you have a profile on GitHub. It would be worth adding links to specific projects you did there with descriptions of what they are so that potential interviewers can judge your code quality for themselves.

    That said, it looks like you've worked on a number of really cool things! Do you have papers that came out of that work, or do you have a video or web page showing the results? If I were interviewing you, I'd want to see something like that rather than just reading a few sentences about it. And just looking at the code may make it difficult to see what the potential of your work is.

    It might be worth phrasing things in a way that makes it obvious to someone how your experience would be useful to them. An HR person will know to look for keywords like "deep learning" and "inference," but they probably can't make the leap from first few sentences in the "Computer Vision Research Assistant" section to "This will help our mobile video app classify and automatically tag things in our users videos" (or whatever it could be used for). It might be worth spelling out some of those sorts of things. (And believe it or not, an HR person also might think "they wrote software to track birds, but we're mainly interested in tracking people," and pass to the next resume in the stack. I've literally had things like that happen to me.)

    3 votes
    1. [2]
      vivaria
      Link Parent
      Because I was rushed into university, realized what it was I truly liked too late into the degree, and am doing my best to pivot. I don't want anything to do with hardware. I have a bunch of...

      If I were given your resume, my first question would be, why did you get a degree in EE if you wanted to be a programmer? Wouldn't a computer science, or at least computer engineering degree have been more appropriate?

      Because I was rushed into university, realized what it was I truly liked too late into the degree, and am doing my best to pivot. I don't want anything to do with hardware. I have a bunch of useless experience and I'm trying not to let it get me down. Your reaction is what I'm terrified of from every place I apply to.

      Do you have papers that came out of that work

      My advisor keeps trying to push me to publish but I am struggling with my mental health and have declined to even try.

      or do you have a video or web page showing the results?

      Not yet. I should try that, I guess.

      It might be worth spelling out some of those sorts of things. (And believe it or not, an HR person also might think "they wrote software to track birds, but we're mainly interested in tracking people," and pass to the next resume in the stack. I've literally had things like that happen to me.)

      This is helpful. I definitely think I was writing for the wrong audience there. Thank you.

      5 votes
      1. UniquelyGeneric
        Link Parent
        I graduated with a degree in ECE (minor in CS) because I realized too late what I wanted to do, and now I work as a product manager in a data/software company. My closest peer from school went to...

        I graduated with a degree in ECE (minor in CS) because I realized too late what I wanted to do, and now I work as a product manager in a data/software company. My closest peer from school went to work at a defense contractor after graduation and now works as a SWE at a finance firm. My point is, neither of us do anything HW based today, so I wouldn’t feel too pigeon-holed into those roles.

        That being said, it’s all about how you can spin your experience. You probably won’t get a job out of the gate as a SWE at a big tech company, but there’s many other companies that ask for “CS or related engineering degree”. An unspoken rule is that job postings almost always ask for more experience than they’re willing to accept, so don’t be afraid to apply to places you might not meet all the qualifications of. Just try to hit buzzwords when you can (as silly as that sounds), and speak in an active voice in your resume, since your first filter is HR. Once you get to a phone interview, it’s up to you to highlight your strengths (don’t bring up the fact that you’re not interested in EE unless directly asked).

        4 votes
  4. patience_limited
    Link
    I hesitate to suggest it, but the computer vision, signal/image processing, and ML projects set you on a potential course for military work, like this. I think you've mentioned previously that...

    I hesitate to suggest it, but the computer vision, signal/image processing, and ML projects set you on a potential course for military work, like this. I think you've mentioned previously that you're in the Vancouver area, but there's work in your field in Ontario, e.g. this. Not an ideal time to travel, but worth thinking about.

    3 votes
  5. [3]
    gpl
    Link
    I second the suggestion to post a resume here with personal details scrubbed. It may help to narrow in on what you could improve. I will say that it doesn't look like experience or qualification...

    I second the suggestion to post a resume here with personal details scrubbed. It may help to narrow in on what you could improve. I will say that it doesn't look like experience or qualification is an issue here. In my and my friend's experience it really is a numbers game - since sites like linkedin and glassdoor make it easy to apply, you should apply to as many as you can. One of my friends submitted close to 200 applications before accepting a job (may be different for an internship). Out of those 200 I think he had a handful of interviews, and I think he turned one offer down. But those are the types of numbers at play here.

    2 votes
    1. [2]
      vivaria
      Link Parent
      Done! Check the OP. :) I'll mostly just echo what I said to the other commenter... it feels like I wouldn't be able to come up with 200 jobs that are a fit? They seem so scarce... but I think I...

      I second the suggestion to post a resume here with personal details scrubbed.

      Done! Check the OP. :)

      I'll mostly just echo what I said to the other commenter... it feels like I wouldn't be able to come up with 200 jobs that are a fit? They seem so scarce... but I think I might be thinking too narrow in terms of possible jobs. I'm just not sure what I'm qualified for, exactly. So many postings seem out of my reach, so I feel like I'm misunderstanding something.

      3 votes
      1. gpl
        Link Parent
        Your resume looks good! There's no major improvements I would suggest after glancing over it - we use the same LaTeX template too :) The 200 number I quoted is an extreme, and I'm based in a huge...

        Your resume looks good! There's no major improvements I would suggest after glancing over it - we use the same LaTeX template too :)

        The 200 number I quoted is an extreme, and I'm based in a huge metro area so there are likely more jobs floating around, depending on where you are. That being said, you should definitely be applying to more. Given that getting something is relatively important in order to graduate, I would definitely considering broadening your search parameters. Don't be scared to apply to positions that you feel either unqualified for or don't know much about - I can guarantee that pretty much everyone is clueless upon starting a new position anyway. The last thing you want to do is self-select yourself out of the candidate pool by not even applying because you think you won't get it. When in doubt, apply.

        It also might be a bit helpful to mentally re-frame what you're trying to do here. The purpose of an application, cover letter, and resume isn't to get the job. It's to get the interview. Once you get an interview you have a lot of opportunities to show why you are a qualified and interesting candidate, so that should be the goal for these first steps. In that vein don't be afraid to cast a wide, wide net. The friend I mentioned before studied English and Mathematics, and his first job out of school was as a management consultant. He managed to pivot then into a data analytics role. So in my opinion going broad is better.

        3 votes
  6. reese
    Link
    My two cents, and I hope this helps: For your resume, I would advise pushing your education to the bottom to emphasize work experience first and foremost. I would also avoid any serif-like font in...

    My two cents, and I hope this helps: For your resume, I would advise pushing your education to the bottom to emphasize work experience first and foremost. I would also avoid any serif-like font in favor of a cleaner one that's easier on the eyes. The fewer squiggles and lines attached to each character, so long as each retains its meaning, the easier it is for someone to skim the resume. I would also recommend preferring whitespace to hard borders. I will say you've done a pretty effective job with your action verb choice on each list item, although the lines are a little wordy. If you opted for a two-column layout, you could call out all of the technologies you've worked with as "tags" in a second, right-most and smaller column, leaving the rest of your resume to focus on what you accomplished and how that benefited others/generated value.

    Edit: Here's a font recommendation: Calibri. I'm not a designer or UX person, and I knew a designer who specifically hated this font. But guess what? It's easy to read and I never had trouble finding interviews with it in my resume.

    1 vote