https://kotlinlang.org logo
#announcements
Title
# announcements
y

yschimke

09/14/2019, 1:54 PM
Some thoughts from recent interview processes. Kotlin is the best language for interviews I could imagine. Even people unfamiliar with Kotlin can understand and so many things are trivial to implement.
Only one company vetoed my choice so I fell back to Java.
n

Nicholas Bilyk

09/14/2019, 3:20 PM
I don't think companies should interview for a specific language unless it's a contractor and they're hiring for one purpose. If the candidate is a good developer they will know many languages.
💯 2
m

Mike

09/14/2019, 3:38 PM
If they vetoed your choice, is it a place you really want to work at?
y

yschimke

09/14/2019, 4:01 PM
Apparently. And yes, but I don’t think a local policy like that defines a company.
l

louiscad

09/15/2019, 12:32 AM
@Nicholas Bilyk Depends on what you mean by "know" when you say "If the candidate is a good developer they will know many languages". Also depends on what you mean by "good", and from which point of view BTW.
👍 1
n

Nicholas Bilyk

09/16/2019, 2:01 PM
I'm not saying if a developer knows many languages they're a good developer, I'm saying if they're a good developer they know many languages. I should clarify "good" as - experienced, someone who experiments, isn't myopic or fanatical about a particular way of doing things. Someone with great potential may only know one language, but to me that either means they're very new to programming, or they're trying to solve every problem with a hammer. Kotlin does happen to be a very versatile language. It's great for a lot of different uses, but even with a multi-purpose tool like Kotlin, any real world problem will expose you to a lot of different languages. So IMHO a "good" developer will own the problem they're trying to solve and learn, and a "bad" developer will say "I'm not a X developer, I'll leave this for someone else to solve." As it relates to the interview process, I find it particularly pedantic when interviews focus on language syntax. It's not an interesting problem, and the whiteboard isn't the same as the development environment. Interviews should focus on how does the candidate solve problems, what is their thinking process? And not, have they memorized the exact syntax for a language-specific feature.
l

louiscad

09/16/2019, 5:14 PM
I agree, expect that there can be good developers that use only one or a few programming languages, not "a lot" as you say.
y

yschimke

09/16/2019, 5:21 PM
With Kotlin being an official Android language, there is real chance for developers who have only developed professionally in Kotlin.
m

Mike

09/16/2019, 5:22 PM
Pedantic point: OP said "many languages". So depending on your interpretation, 'a few' could be considered 'many'. I'd say a good programmer is very likely to have learned at least 2 or 3 languages (i.e. functionally competent, and not just dabbling). If they're ambitious, they will have looked at both an OOP and an FP language. But not having done doesn't doesn't make them bad...
👍 1
y

yschimke

09/16/2019, 5:25 PM
Agreed, A strong product engineer coming through Facebook may only know Hack. But can always learn later.
l

louiscad

09/16/2019, 5:40 PM
Kotlin being both OOP and FP… ¯\_(ツ)_/¯
m

Mike

09/16/2019, 11:44 PM
When I say FP language, I tend to mean a fully FP language (Haskell, Scheme, Lisp, Clojure). Kotlin has some FP pieces, but is also missing a number of things to be truly FP. I don't think it's a bad thing, and the Arrow library is excellent if you truly want to do FP with Kotlin.
n

Nicholas Bilyk

09/17/2019, 2:14 PM
"With Kotlin being an official Android language, there is real chance for developers who have only developed professionally in Kotlin." - Perhaps my age is betraying me, but that's kind of my point exactly. That's a very limited developer in my opinion, one that only develops Android applications. I don't mean to say that they're "bad", but I will emphasize that they will improve their skills by trying other things. I myself would improve professionally if I learned C/C++, then I'd have an easier time with native libraries.