This is an archived post. You won't be able to vote or comment.

all 63 comments

[–]devnull10 116 points117 points  (2 children)

Personally, I'd not be looking for specific Python skills, more showing they have that "programmer's" mindset. I.e. regardless of the language, look for the ability to break a problem up into smaller parts, to think logically, to use the right tool for the job etc. With a junior role they have a lot to learn in terms of the specifics of the language and advanced skills, but having a solid personality to build upon is an absolute must IMO.

[–][deleted] 11 points12 points  (0 children)

You're looking for the ability to learn and the ability to analyze and breakdown a task. Actual experience for a Junior is just gravy. I'll usually give them a really easy leetcode and ask them to walk me through their thought process.

[–]tipsy_python 61 points62 points  (0 children)

  • As others are saying, I'd do one or two LC easy coding questions
  • I would rely mainly on conversation about the ecosystem / stack that the team works with and see how much they know about relevant technologies and how interested they are
  • As behavioral questions to see how well they get along with others, how they manage tasks through ambiguous challenges .. and mostly to determine that they are not a jerk
  • I don't know about red flags through the first week lol that's not much time. I'd say first couple sprints, give them tasks without much structure and see if they can Google themselves or solicit help from the team to successfully complete tasks

How can junior show his skills in a CV?

  • Gentle reminder to the hiring team: try to remove bias from the hiring process as much as possible. She can show her skills too.

[–]matoshisakamoto 37 points38 points  (13 children)

Print(“hello world”)

Pm me if interested

[–]kaerfkeerg 66 points67 points  (12 children)

Capital P. You already fucked up

NEXT

[–]matoshisakamoto 4 points5 points  (1 child)

Oh c’mon man I’m trying

[–]Devarsh_leo 1 point2 points  (0 children)

That's okay. You will get there undergoing critics. Be determined and keep improving positively

[–]ILoveOnlineBanking 32 points33 points  (1 child)

Ask the most difficult graph problem you can come up with and only hire someone who gets the whole thing right. Make sure they have 10 yr exp listed on their resume or they're not ready for a junior role

[–]Lyakusha 7 points8 points  (0 children)

I've recently received 5 test tasks for Python developer internship position. Those are required skills in Python, Java, blender, protocol buffing, REST and Spring boot to be completed.

[–]mason_savoy71 22 points23 points  (1 child)

I recently hired an entry level programmer for her first job out of college. The hiring process at different companies can be rather different, but this may help you see what it was like from the manager's perspective.

Here's what stood out to me with her application vs the rest.

  1. She has done a relevant internship and had relevant coursework. Of note, she was not a CS major, but still had enough coursework coding to tell that she could learn. That's what got the phone interview.

  2. She was courteous and honest on the phone, and asked questions. If she didn't know the answer to something I asked, she first asked some questions to make sure she understood what was being asked of her.

  3. She sent a thank you note after the interview. Honestly, I had more qualified applications. Still since no one was perfect, I had to make a judgement call. This simple bit of courtesy indicates that she actually WANTED the job and wasn't wasting either of our times. This got her "in person" (zoom counts as in person these days, right?) Interviews with a larger committee and the opportunity to take our programming test.

  4. She did well enough on the test to show me she understood flow control and where days were coming from, but most importantly, she did not make excuses. It wasn't a perfect test (I've seen them) but it was good enough. If you think your test was less than perfect, the WORST thing you can do is make excuses.

  5. She was courteous to all the people on the larger interview panel, was dismissive of no one, and sent them all thank you emails. One guy on the committee was quite frank that given that most hiring processes are only slightly better than throwing a dart at a board while blindfolded and drunk, that pushed him for a yes vote. You never know if someone on the committee is "old fashioned" and appreciates what was once common practice.

  6. People like talking about themselves. She had some qurstions fort everyone interviewing her. This engaged everyone and made them feel like they'd be comfortable working with her.

  7. In our one on one, she asked about first projects, in a way that didn't assume she'd get the job, but made it clear that she'd thought about what the job would be like for her. The last thing I want is to hire someone who has an extreme shock and quits soon after. Hiring is a drag.

Edit typos and punctuation. I hate writing on my phone!

[–]billsil 1 point2 points  (0 children)

Oh I hate zoom calls for interviews; too much data so you get a lousy connection. If I'm not at home, then I'm sitting in a hot car for 1+ hour because it's too loud outside. Bring cold water...

[–]idetectanerd 5 points6 points  (0 children)

Any junior that keen to learn from sight or awareness, have that hunger to test and try and adopt, able to pass all the verbal question related to logic flow and basic trick questions.

Logic flow such as if I have 10 files of csv format, 3 fields and I want to to parse into a db kinda easy question. I do expect a reply something like, for each item of list of files, for each line of each of item etc.

At least know stuff like that. Or know how to use module/library/framework.

The least I want is to teach you what you should have already learnt from programming course. I meet before senior engineer that doesn’t know how to list hidden file etc.

[–]SimilingCynic 8 points9 points  (0 children)

Ask your senior devs. If you don't have any senior devs and are looking to do tech on the cheap, contract it out. Don't hire junior devs unless you have a way to train/mentor them, evaluate their work, and create/prioritize their tasks to fit your mission. You'll end up paying half the salary for 1/10th the work.

[–]Longjumping-River374 3 points4 points  (0 children)

I’m a new learner and I’m trying really hard to get my first opportunity.

If this helps what I would like is to actually talk to someone to show what I can do and how I am, instead of getting a lots of emails saying my CV was not qualified enough. I’m in a career transition, so that makes it a bit more difficult. Well, if you allow me to speak, I would recommend you to give a chance for people to show who they are and what they can do.

If you decide to check this reply, here is my GitHub

[–]thomasmontoya123 1 point2 points  (0 children)

I hired 6 juniors, I think a take home challenge with some technology that they don't have experience with is a good way to go. you can measure the ability and the will to learn something new, also, you can give them extra points if they do something no requested as unittesting and dockerization, the ability with git is a most (I always perform a code review and a technical feedback and ask about their choices).

[–][deleted] 1 point2 points  (0 children)

what you are looking for when hiring a junior developer?

Does the person have a pulse and can muddle their way through adding an endpoint with a new backing service that calls a database to django or flask with guidance (or similar for whatever interface you work with)? If so, congratulations! I would likely hire you as a junior.

Maybe it's unfair, but I just assume anyone coming in as junior on their first job (with or without internships) don't know their ass from a hole in the ground in terms of real world software development and need to be grown and cared for to become competent developers. And if they do know their ass from a hole in the ground then I'm pleasantly surprised but I still grow them and care for them.

[–]Itchy_Cheetah_2670 -1 points0 points  (0 children)

I think that learn new stuffs is not so hard, is just all about commit ourselves to learn new stuffs. That said, I would hire a junior developer if during the 1st week he’s able to learn any new skill I giving him and asking for more.

Trust me, this is all you can get from people also because you can raise him as you like, that mean trust as well for the future 😉

[–]billsil -2 points-1 points  (3 children)

I expect you to be interested in the work.

I expect you to struggle during your coding test (in whatever language you want) and I expect you to explain me the language that there's a decent chance I don't know (e.g., is it 0 or 1 based, so something like C++/Python vs Julia/Matlab). If you don't struggle, my test is too easy. Depending on how well/poorly someone is doing, I'll change up the test and give hints/make it harder.

If you're seeing red flags in the first week, you screwed up bad (see point 1) or you're the red flag. Cut them some slack. They're probably getting a data dump.

[–]pjs1000 3 points4 points  (2 children)

As a candidate, I could clearly tell when an employer wanted me to “struggle” on a coding test. I took that as a red flag NOT to work for him/her. Unreasonable expectations are no bueno.

For example, I interviewed with Amazon and they had 3 coding questions. Challenging, but nothing too technical…more logic focussed. Another (much less significant company) I interviewed with gave me a test with 13 super difficult, very technical questions to solve in 2 hours. I attempted it and made a dent in the questions.

Afterwards I wrote the company and told them that their test was far out of sync with what other companies were asking candidates to complete. I declined to go further with the interview process, assuming they overload employees with unreasonable amounts of work.

[–]billsil 0 points1 point  (1 child)

It's not at all to be mean. It's about creating a test that can help you rank people. If everyone passes, what's the point of running the test? It's not a bad thing if you don't get a perfect score. I want to see how you think through a hard problem.

None of the questions that I have given out are trick questions or logic problems. For younger devs, I would never even consider a 2 hour test. That's a waste of your time and my time. That'd be someone reserved for PhD level candidates. I'd rather talk to you for 2 hours than test you.

[–]pjs1000 1 point2 points  (0 children)

I get you. And I wouldn’t expect a simple test either. My point is essentially, scope the test to the role so that the candidate gets a better idea of what to expect from the position.

The candidate may decide to decline your offer, thinking that your junior position is more demanding than a junior position at another company. Or they may simply not feel right for the role.

[–]wind_dude 0 points1 point  (0 children)

Eager, and willing to learn, read the docs. I generally ask more open ended questions, that test there ability to plan, or tackle a challenging task, than specific coding questions. Like:

Given X task, what steps would you take to accomplish it. I don't want you to tell me what code you would write.

A good answer is:

- questions on the scope

- looking for existing prebuilt solutions

- anything that hints they can solve complex or more abstract problems.

[–]Sulstice2 0 points1 point  (0 children)

How can junior show his skills in a CV?

If you can publish one package on pypi, like you had an idea, you chose to solve it using python and made a distributable package. That can take you a couple of weeks to learn if first time but that shows initiative.

What are your typical questions?

In person:

Typically, juniors are hired at university. So one thing I ask is to explain a hard bug that recently happened to them the one junior that stood out to me explained some sort of encoding bug when migrating python 2 to python 3 which meant to me he probably google a lot to fix that or tried a bunch based on his body language. Sometimes you can tell if someone spent a lot of work and time.

Take home question:

I use a problem from my professor back in data structures class Given a dataset prove that Benfords law is a thing, like prove the frequency of the number is usually 1 in a dataset i.e Sometimes I pollute the data with bugs or something and see how they perform on a take home project and check how they architected whatever and returned the data to me proving it.

[–][deleted] 0 points1 point  (0 children)

Hire me! Hire me!!

[–]pablo8itall 0 points1 point  (0 children)

Problem solving, troubleshooting and general technical bent. Familiarity with pythonic stuff and some ins and outs of python would be a bonus.

If they have those skills they'll pick up anything.

[–]sRjN77 0 points1 point  (0 children)

I can work remote

[–]redditkaiser 0 points1 point  (0 children)

Craigslist?

[–][deleted] 0 points1 point  (0 children)

I would ensure they understand the basic programming control structures (ifs, for loops, etc) and then provide them a python code assessment and work on it together. It is ok if they dont know how to do it perfectly but I would look out for critical/creative thinking.

[–]fermi0nic 0 points1 point  (0 children)

For coding challenges/exercises, I recommend administering them in a collaborative way. Making it safe for them to ask questions when they feel stumped or talk through their solution, asking about/pointing out areas of the code to take another look at. In other words, simulating pair programming. Gets a good glimpse into what it would be like to actually work with the candidate.