Position: Full Stack Middle/Senior Developer
Company: Scimus
Category: Node.js
Experience required: 5y
English level: upper
Published: 2023-09-01T00:00:00+03:00

**!Important note: Without answers on 3 question from this job post, candidates will be rejected **

We thrive on openness, autonomy, documenting the cool stuff, and team problem-solving sessions that stretch into the wee hours. Ready to write the next chapter with us?
   **1. The Big Picture:**
Hey there! We're searching for a Full Stack Developer who's got that flair for juggling both the back and front of the house. You know, someone who's crafted a bunch of cool projects and can't wait to show them off? Our stack is… well, broad but we are moving quite some React.js code to Solid.js and are after someone who's been around the block with various tools and technologies and would fancy learning that one, specifically. We reckon the best tools are built when fun meets passion. Got a GitHub repo bursting with nifty projects? You're our type! Could you show off the diversity of your experience in some other way? Tell us how.
   **2. Collaboration is Key:**
The team you'd be jumping into? Pretty rad. There are two junior front-end devs who are super eager to learn. You’ll also have the honor of code-sparring with our tech lead, a seasoned warrior with 20+ years under his belt and extensive high-load, high-availability tech development and one more programmer on the team could do the other type of sparring, the boxing type. Code reviews? Super important. We're all about peer learning and iterating on feedback, your open and humane communication is key.
   **3. More About The Squad:**
Beyond the devs, our broader team is a mixed bag of magic. There are two QA’s - one of them wears the business analyst hat quite often. Cheerleader managers supporting your work. Oh, and there are a few programmers floating around outside the main team – and they’re gearing up for expansion. Experienced DevOps/System Admin makes sure releases sit tight and we've got a UX designer morphing into a junior front-end role. Diverse, right? We start each morning with a Daily meeting, use wiki and track issues in Jira (yeah I know). We chat and do infrequent on-point video calls to clear out the fog.
   **4. Experience - It’s Not Just A Number:**
When it comes to experience, it's not just the years – it's the variety. Worked on multiple projects with different stacks? Collaborated with varied teams or freelanced on diverse gigs? That's gold for us. We value what diverse experience brings to the table: adaptability, fresh perspectives, and innovative solutions. So if your journey has been a winding road of awesome projects and collaborations, let's chat!

**Skills and Qualifications**
- Years in the Game: 3-5 years of hands-on, no-nonsense coding experience.
- Solid.JS: Ever heard of Solid.JS? It's a declarative JavaScript library for building user interfaces. Ready to master its reactivity and fine-grained updates?
- React.JS: You're adept at crafting interactive UIs using React's component-based architecture and know it’s downsides well.
- Node.JS: Because JavaScript isn't just for browsers. You’re familiar with this runtime and can craft server-side applications.
- Next.JS: A React framework, but for production. Experience with -Next.js would be a midpoint between React and Solid but we don’t expect to write code in it.
- PostgreSQL: Managing relational databases basics, great if you know it specifically. .
- GitHub Know-How: GitHub isn’t just a tool; it's your tech autobiography. Your repos, contributions, and collaborations tell us your story.
- Flexible Work Environment: Whether you’re dialing in from your home office or joining us on-site in Lviv, you're comfortable and productive.
- Self-Starter: You've got the knack to work independently, diving into tasks and crafting thorough documentation. Yet, you value team synergy when the moment calls for it.
- Mentorship: You’ve got a heart for teaching and a mind for growth. Helping junior devs navigate the coding rapids is something you can do and done in the past.
- Initiative Overdrive: Pro-active doesn’t even begin to describe you. You’re the sort who’ll ping for a meeting, kick-start a doc, or jot down a task without missing a beat. You don’t need your food chewed for you. 
It's not just about ticking boxes – it’s about openness, innovation, and the drive to keep learning together. If this doesn’t describe you but hits the sweet spot at where you want to be in a year or two - tell us about it.

**Preferred Qualities**
   - Seasoned Coder: More than 5 years in the dev world? That's a bonus.
   - Product Pro: If you've been part of a product-centric company, we'd love to hear your stories.
   - Token-Savvy: Familiar with products using token-based models? Like the way OpenAI’s ChatGPT operates? That's a feather in your cap.
   - GitHub Guru: A solid GitHub portfolio? That's your royal flush in our books.
   - Open Source Advocate: Contributions to the open-source realm? Big thumbs up from us.

**Questions **
!Important note: Without answers on 3 question from this job post, candidates will be rejected 

Pick and answer any three questions in text and send it to us. Using and citing external sources is expected. Your writing demonstrates the way you think, approach problems, improve and facilitate communication. 
**Architectural Decisions:**
Imagine you're tasked with building a scalable web application service that will allow users to host 1:many video calls from their mobile phones and desktop computers as a part of the service. Describe the architecture choices you'd suggest, considering both frontend and backend, and justify your choices somewhat.
**Performance Improvements:**
Your current web application has been reported to suffer from sluggish performance during peak hours. How would you go about diagnosing the problem, and what potential solutions can you think of? Describe your toolset.
**Security Challenges:**
Detail a situation where a web application might be vulnerable to a CSRF attack. How would you prevent this in a Node.js environment?
**Database Design:**
Suppose you're creating a new feature for a social media site where users can join groups and post within those groups. Describe the database schema you'd start your design with and the relationships between tables.
**UI/UX Considerations:**
We want to implement a dark mode for our web application. Discuss the UI/UX implications and the potential challenges you foresee. Additionally, outline how you might utilize React.JS for this feature. What about Solid.JS?
**Continuous Learning and Trends:**
Choose a recent trend or technology in full-stack development that you're excited about. Describe its advantages, potential use cases, and how you envision its future. Libraries and open source projects work too.
**Problem-Solving Scenario:**
Your latest feature deployment caused a significant bug in a seemingly unrelated part of the application. Walk us through your troubleshooting process. How would you ensure minimal disruption for users?

**Joining Scimus means:**
Processes based on Kanban and Agile methodologies.
Using recent technologies stack in a company with ability to learn it with the mentors help: PHP, Node.js, JS, React, Vue.js.
Being open for innovations – easily test and integrate new technologies.
Strategic thinking – as a profitable company, we are focusing on long term issues and opportunities, long term cooperation gives ability to have more control on the process.
Investing in our own people – we have proven experience of internal growth of our employees to senior specialists and management positions.
We work with the brightest engineers and the most talented business people we can find. Everyone on our team is here to do meaningful work with a broad-reaching impact. We have a fun yet challenging work environment that fosters diversity, creativity, and teamwork.

**What we offer:**
- Challenging tasks with great opportunity to level up your skills.
- In-house workshops and tech talks.
- Flexible working time.
- Sharing the costs of education (conferences, courses, lectures).
- English classes.
- Corporate parties.
- Project/Role switching.
- 20 working days of paid vacation.
- Good sense of humor.
- Table soccer.
- Free pizza every Friday at office.

**Recruitment process stages:**
- Applying to this position please also send your answers to the questions in the job description. 
- Then you’ll be reached out by our Recruitment team and asked to fill out a Culture fit survey.
- Best matches will be invited to an interview with Hiring Manager.
- Next step will be technical interview with the customer (CTO and PO).
- As a final step we will send you the best job offer and invite you to make more happen with us.