Software Crafter
Work in an exciting environment on software projects from NGOs to Banks, from IoT to Cloud, with a culture that focuses on quality, teamwork, and individual growth.
Download PDF Job Description - Software Crafter
Who we are
Nelkinda Software Craft, founded in 2015, is a culture leader in quality software development. Through our project and coaching work, we are advancing the way by which organizations develop software. Our clients range from startups to multinational banks. Having organized, hosted, and supported more than 100 events in the software development community over the past 5 years, we are one of the most active contributors to the international software craft scene.
Job Brief
Industry | Computer Software |
---|---|
Occupational Category | Software Developer |
Employment Type | Full-time employment, 40 hours per week |
Job Location | India/Pune or Goa/remote |
Date Posted | 2021-02-24 |
Probation Period | 6 months |
Join Date | Immediate/ASAP |
Who you are
- You have at least 3-5 years of work experience and know at least one of the languages C, C++, Clojure, Go, Haskell, Java, JavaScript, Kotlin, Lisp, Python, Rust, Scala, Scheme, or TypeScript extremely well.
- You have a passion for solving problems and providing not only workable but maintainable solutions.
- You understand that learning is a never-ending journey. Because of that, you are always eager to learn new tools and technologies. You keep in touch with the latest improvements of software engineering by reading books and blogs, following industry leaders on social media, and watching videos. You support team members and clients on their learning journeys.
- You have strong analytical and reasoning skills based on the scientific method with an ability to structure and visualize processes and outcomes.
- You have outstanding communication skills in English and the ability to work collaboratively.
- You have a degree in software engineering, computer science, mathematics, electronics engineering, or a related field, or equivalent work experience.
- You have mastered structured, object-oriented, and functional programming, design patterns, the SOLID and package principles, and you breathe the 4 rules of simple design.
- You embrace change and harness it for competitive advantage.
- You are eager to learn new tools and technologies.
- You do not judge tools and technologies by their age but by their usefulness and fitness for purpose. You can use old and new tools and technologies alongside each other to combine their strengths.
What you do
- You work on a variety of languages, technologies, and architectures.
- You ensure a shared understanding of and compliance with requirements from analysis to implementation using specification by example and behavior driven development (BDD).
- You test-drive your design and your code (TDD), and further safe-guard quality using static code analysis tools and mutation testing.
- You keep the design of the code at a high level of maintainability by refactoring continuously and mercilessly.
- You continuously integrate your changes to the trunk several times a day so that they can be deployed to production, and always keep the code at release-level quality, optimized for speedy feedback.
Responsibilities
- You design and develop software using Extreme Programming and related practices like simple design, pair and ensemble programming, test-driven development, behavior driven development, continuous refactoring, continuous integration, trunk based development, and release to production several times a day.
- You help our clients to improve their software development process to achieve the same level of quality and agility as we live and breathe at Nelkinda Software Craft.
What we offer
- The opportunity to work with a large variety of projects, clients, and technologies.
- A health insurance plan with family coverage.
- A detailed individual growth plan and support to help you become a master software crafter.
- An allowance for books, conferences, internet, and training.
- An environment that allows you to grow and shine as an individual in the international software craft community through our various event platforms.
- A value system that ranks principles and practices higher than tools and technologies.
- Opportunities to contribute to open source projects.
How to apply
- Send your application letter and résumé in PDF or XHTML5 format to career@nelkinda.com.
How we interview
- 60 minutes video call on Discord, Google Meet or Zoom.
- Offline coding assignment plus 60 minutes video call in which you have to explain your solution to the coding assignment.
- 120 minutes remote pairing session on Discord, Google Meet, or Zoom.
How to prepare for the interview
Make sure you have your laptop ready with a good webcam and microphone or headset and that video calls work, the audio is good, and you know how to share your screen. Test with a friend.
An interview is a mutual activity, prepare a list of questions you would like to ask.
Here's a list of some of the things we expect a software crafter to know:
- Behavior Driven Development https://www.agilealliance.org/glossary/bdd/
- Cucumber https://cucumber.io/
- Extreme Programming https://www.agilealliance.org/glossary/xp/
- Flaccid Scrum https://martinfowler.com/bliki/FlaccidScrum.html
- Git https://git-scm.com/
- GitHub https://github.com/
- JUnit 5 https://junit.org/junit5/
- Manifesto for Agile Software Development https://agilemanifesto.org/
- Manifesto for Software Craftsmanship https://manifesto.softwarecraftsmanship.org/
- Principles of Object-Oriented Class Design http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod
- Refactoring https://refactoring.com/
- Scrum https://www.agilealliance.org/glossary/scrum/
- Specification by example https://en.wikipedia.org/wiki/Specification_by_example
- TDD Guided by ZOMBIES https://blog.wingman-sw.com/tdd-guided-by-zombies
- Test-Driven Development https://www.agilealliance.org/glossary/tdd/
- The Four Rules of Simple Design https://martinfowler.com/bliki/BeckDesignRules.html
- The Three Laws of TDD http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd
- The Transformation Priority Premise https://blog.cleancoder.com/uncle-bob/2013/05/27/TheTransformationPriorityPremise.html