We’re looking for an experienced mid to senior JS Full Stack developer to help us facilitate people’s cooperation and work by developing the best collaboration software.
- 2+ years experience with React.js, Redux, ES6, Node.Js
- Experience with HTML/CSS;
- Experienced in integrating with RESTful APIs;
- Good knowledge of modern build tools such as Webpack;
- Experience working with Jira;
- Ability to understand complex business logic of modules;
- Experience with WebRTC will be a big plus;
- At least intermediate English (both written and spoken).
- Develop and support front end applications;
- Implement, debug and support required content;
- Take part in requirements analyzes, research implementation ways and possibilities;
- Analyze and estimate implementation efforts;
- Write clean, bug-free and well-documented code;
- Communicate with the team.
Our preference is to hire right-types over skill. So what is a "right-type":
- Driven and passionate about development and their job in general. While working-to-live is admirable, we are looking for live-to-work people. For those of you that sit in on my interviews, you know that I spend about 90% of my time focused on this. "What got you into software?" "What part of software do you enjoy the most?" "Tell me about your favorite project" If they don't know, if they never thought about it or if there's not the slightest hint of some enthusiasm there then we don't want them.
- Is a great communicator. Communication is key. Software is mostly about communication. Most people think that software is mostly about writing code. It's about effectively communicating intent, communicating understanding of the requirements, and communicating the obstacles and solutions that appear. Some of this communication is in code. The more important majority is in other forms. Can the candidate clearly articulate their intent? I don't care if there's a language barrier. I care more about how structured their communication is.
- Is open to working with distributed teams and can talk a bit about the challenges present in these situations. The folks that we don't want are the ones that put their head down and never look up. Again, software is about communication. Can they read a set of docs, digest them, come up with a plan, articulate it and execute against it?
- Focuses on the goal, not the software. The best developers are the ones that know when not to write software. I had a recent candidate tell me about how he prefers to write his own frameworks over using existing and well-supported ones. This is a dev whose focus is on the software and not the goal. Ureeka's goal is not to write and maintain frameworks. Ureeka's goal is to solve its business needs and software is a means to that end. We hire developers that show interest in the problem that we're trying to solve.
- Understands the importance of being an expert at their tools. We're still hiring developers that cannot type. It boggles my mind. The single rate limiting factor in a developer is how quickly they can translate the requirements into code (AKA typing). I cannot tell you the number of developers that have lamented to me about problems with their dev environment. If you hired a painter and that painter showed up with brushes that had big gaps in missing bristles, you'd fire them on the spot. The same thing is true with developers that tell you that their "Windows installation is too bloated so their computer is slow".