I would argue that a JIT compiler is the only type of compiler that makes sense for a language like Julia, it is not a disadvantage, it actually is an advantage.
First of all, a carefully designed JIT compiler can be much faster than a traditional / AOT compiler, because at runtime the compiler knows the hot areas of code and how they're being used, so it can apply optimizations that an AOT compiler cannot apply. An AOT compiler can only guess how you're using the code and how you're using the functions, a JIT compiler, on the other hand, can observe how you're doing that.
That aside, Julia is a language meant for scientific purposes. A scientist wants to write the code, execute and get the results, and believe me the code changes a lot, specially when doing research. Sometimes it is not justified to wait for the compiler to build and link your project after every little change you make, you just want to execute immediately, and in order to do that you either need an interpreter, which is horribly slow, or a JIT compiler, or a combination of both as JS does.
Another note I want to make is a remark on the title of this article: Why you shouldn't use Julia. Ok, we shouldn't use Julia for what? For making websites? For writing an OS? For writing scientific research programs? Languages are tools and you choose the tool based on the task you have at hand, sure if the language has fundamental issues then you should avoid it, but none of the issues you listed are real issues.