Can you briefly introduce yourself, and tell us about your background?
I’m William Candillon, a 31-year-old software engineer from France. However, I live in beautiful Zürich Switzerland. Spending a lot of time at the moment learning German. And that’s only the first part, after that, I will need to learn switzerdütsch.
I used to play a lot of video games as a teenager, and my favorite one was StarCraft. When going to LAN-parties, I saw people programming PHP to build intranets for the event. I was blown away by the services they were building. This was when I decided to learn programming.
What are you currently working on?
I worked at a startup for seven years and then decided to take a break to explore my ideas. The React Native Starter Kits being one of them.
React Native Starter Kits are premium React Native boilerplates for iOS and Android. The goal is to provide developers with 80% of the work needed for their next app. That can also include backend integration with Firebase. Many use cases are covered, such as a social media app, a productivity app, a listing app, a music app, and so on. Each template is kept up to date with the latest best practices in React Native development. Being a software engineer at heart, I try my very best to provide the highest code quality possible. For instance, the heavy static analysis is used on the source code, as well as strict type checking.
A typical example is the Airbnb template. I met many people who want an Airbnb-style platform for a particular vertical. Maybe it’s the Airbnb of sports or cosmetics. By getting the starter kit, they can get a fully functional prototype for iOS and Android. Most of my customers are digital agencies that are using the kits as a cookie cutter solution for their customers as well as entrepreneurs that are looking to move fast with their MVP.
The React Native Starter Kits are a one-man show. I first used the Native Base marketplace as a sales channel. Then I slowly started to build my own sales channel by writing Medium stories and making YouTube videos on the topic of React Native.
Lately I started a new YouTube series called “Can it be done in React Native?” where I try to re-create UIs from mainstreams apps.
Why did you decide to build the React Native Starter Kits?
When building my very first app, React Native was an obvious choice: it completely disrupts the economics of building and publishing an app. It was my first experience with React, and many mistakes were made. Therefore I decided to reflect on the lessons learned and package them into a premium quality starter kit. So the original premise was simple: it needed to be done regardless of any commercial aspirations. Even if no one bought the product, it would still be incredibly useful for me.
My biggest challenge as an engineer is to build efficient sales channels. I’m especially struggling with things like Google ads or Facebook ads. I love writing beautiful code, enabling people to keep their technical debt as low as possible but everything non-technical is probably just as critical, if not more so.
What’s next for this project?
Right now, the React Native Starter Kits are focused on front-end code. In the future, the kits will have more sophisticated backend integration and provide out of the box features such as Facebook login, database, storage, push notifications and so on. Our goal is to provide you with a package that contains 80% of your project.
What challenges do you usually face during product development?
When going from a design file to actual code, I’ve been struggling with a design that doesn’t implement a rigid style guide. On one screen a card might have a margin of 16 pixels but a margin of 24 pixels on another screen. Same for typographies.
Thankfully tools like Sketch or Figma have built great features to solve this exact problem allowing designers to create reusable components and style guides.
What tools do you use to cooperate with designers and why?
When working with React Native, I often start from a Sketch file design. However, since Sketch can copy only CSS and not React Native code, I have used Avocode to help me translate the design specifications into React Native many times.
I’m also looking at tools like FramerX or BuilderX, that might play an important role in design to developer workflow in the future.
What advice would you give to someone who is just starting with software development?
First of all, there hasn’t been a better time to learn software development than now. I would also recommend to take a hard look at which technologies are on the way up and which technologies are on the way down.
For instance, the market share of PHP is enormous but in which direction is it trending? This can help to decide which technologies are worth your time and focus. Finally, I would recommend to learn by doing. Set a small goal and then use Stack Overflow, tutorials, YouTube, and all the other wonderful programming resources available out there to achieve it 🏆.
Have a suggestion for an exciting designer or front-end developer we should interview? Hit me up at [email protected].