Busy year as a student, and engineer.

I’ve been studying for about 21 years now. This year was the last one of my career as a student, and probably the most interesting.

This three-year engineering degree I’ve been pursuing at the University of Technology of Compiègne, France, was eventful. I met lots of great people but I won’t talk much about my life as a student here and my crispy adventures. This one is about me being Firmware Engineer in a startup I’ve been following and supporting since the very beginning while studying at the University.

As a full-time student, I’ve been pursuing different projects in various courses as I’ve been using my spare time to lead different interesting and more personal projects. Well… for the last 12 months, I went a little further!

Sharing what I’ve been learning and doing this past year (by Columbia University)

Learning engineering.

I want to talk about a few of these impressive and interesting courses I pursued.

  • Robotics. Oriented towards self-driving vehicles. With 5 classmates, we completed an impressive project: getting one electric car drives itself on a circuit and follow another car using the GPS, an accurate map, a lidar, odometry and communication between the cars. I may have some videos coming, it was nuts.
  • Embedded systems. We learned various things about the old ARM A920T architecture which I didn’t know before as I’ve always been working on Cortex M microcontrollers, but application processors are not very different. We developed a preemptive scheduler to learn the basics. Then we worked on a Real-Time Linux, thanks to Xenomai, launched via the U-Boot bootloader which I know pretty well as I ported it on a Cortex M4-based dev-board a few years ago.
  • Business intelligence. Offensive and defensive strategies. For example, how to protect company’s technologies (internally, externally, in front of the law…etc). The project was about helping a startup creation while researching patents and companies working on the same market (partners and/or competitors). It was great to have a sneak peek of BI, as I am more and more into entrepreneurship. I also wrote a report about data security at Equisense which is really about being smart with startup’s assets.
  • Distributed systems. How to communicate with a bunch of nodes. I got very interested into this course but I never had the chance to apply what we learned in real life projects. I’m sure I will one day, probably on a wireless sensor network or some other IoT-related products.
  • UX design. Let’s talk about our project: AirCooking. It’s a connected kitchen you can control through gestures (LeapMotion). No more hand cleaning every once in a while. A screen shows you a dashboard of your kitchen and recipes you can follow. Once connected, a kitchen can do a lot more: voice-controlled, camera-equipped so it can open the oven automatically when you have your freshly-made pie to bake (and recognize this is a pie once into the oven!). This smart kitchen would even be able to set the temperature and timing of each component as you follow a recipe… Cooking made easy!

That’s pretty much it for the main courses I pursued this past year. During the first semester, I was struggling to get everything done as I had a lot of projects, and a product to build as I was leading the hardware and firmware development of the the first equine sensor. During the second semester, I spent way more time building this product. The transition from student to engineer was seamless.

Doing engineering.

When you learn things out of context in a classroom, you don’t learn them nearly as well as in a contextual, hands-on scenario that you care about: your own code, for example. (source).

To my mind, this sentence is fundamental.

At least for computer engineering student. I am not generalizing for every engineering student.

I’ve always been interested to work for companies as the job done is useful (and I still regret that school projects are made boring because we really don’t care about what we are working on). I worked for the Junior Enterprise of my University 2 years ago, I paused my studies to help a friend launch a startup, I did an internship at Spire in San Francisco, CA, and I’m working for my friend’s now-funded startup since then: Equisense. As I said, the courses I pursued were very interesting, but unfortunately, my greatest experiences learning new things weren’t into the classrooms.

The work sphere

It all started two years ago, during the summer 2014, as I was about to move in California to do an internship in a small company. I didn’t get my Visa as the co-founders were working within their flat at this time. My friend benoit was about to pursue a year in a business school while working on his project to build a sensor for horse performance and welfare. I chose to pause my studies to help him build this prototype along with an Android application to get the raw data wirelessly from an inertial sensor. Then I got a 6-month internship at Spire and returned with a lot more skills and more maturity to build a connected sensor with the right components.

Back into the classrooms I started to build this product during my spare time, helped with a 3rd party company for the hardware part. I worked most of the time remotely, in my dark bedroom, during nights and week-ends, helped by Hugo. At this time, it was hard to get everything done as I had 6 projects for the courses I was pursuing. The schedule was fuzzy. We went step by step while the rest of the team was working on a crowdfunding campaign. They did well, Equisense raised 171k€ on Kickstarter in one month. At the beginning of December 2015, we needed to change our plans: we had to move faster. We rebooted the whole development due to a new hardware architecture. In one month, the firmware development was back on track. Bonus: I got pretty decent marks at my courses :).

During the second semester, I needed more time to work on the product. I chose only 3 courses and managed to get credits by leading the Equisense project (thanks to my school). It gave me a lot of time to work on the tracker, I achieved to spend 2 to 3 days a week in the Equisense office, making me an engineer more than a student. Things got pretty interesting since the team expanded at a very rapid pace. We welcomed about 10 people in the last 4 months. Having the chance to work with all these people is interesting when you try to understand their work and how they achieve to make the company better, day after day. We struggled on some things, did some mistakes and had trouble handling them. But everyone of us learned by tackling the issues we had (at least I hope so!). I still regret some things are not happening though (Learn. Do. Share?), they will eventually but people are all too busy enduring this startup life. Other problems and mistakes are on the path obviously, the product is not in the hands of the customers yet. What’s important is how to respond to the difficulties, and to show to the community that, on our side, we are doing what we think is the best for the company, and for them.

Let’s talk engineering now.

I’ve been working in the middle of the Mobile and R&D guys. We’ve been working to deliver features one by one trying as best as we could to stabilize them before moving on the next one. Sometimes we are circling a few times into the loop. Sometimes we are breaking stable features trying to build new things. Keeping up with the schedule is not easy. In this kind of project we have to communicate a lot but it was hard as I spent only a few days a week at the office as I was at school the rest of the week.

Trying to understand the whole product, from the sensor to the smartphone and the back-end is very important to grasp every details and understand the failures we are facing along the way. It was great for me to work a little on the Android app to implement some Bluetooth features, as it was great to help Kamel develop his algorithms, ie. to fix bugs ;-P.

The product is now at the MVP (Minimum Viable Product) stage and is being tested by a few people. It’s not as beautiful as it will be in the future but it handles the main features.

Get sh*t done.

During this crazy year, I worked harder than ever and for the first time, I know where my boundaries are. I made mistakes by not taking time to just… step back. My best advice for you would be to push your boundaries and see how it goes and learn from the mistakes you’ll make. But still, here are some pieces of advice:

  • Take one break a week: after a week of hard work, I took a break and rapidly realized that I had to take a bowl of fresh air and think about something else than my projects. Then I tried to take one break a week (usually on Saturday), and failed two weeks in a row during December as I really had too much to do. Having a wonderful social life is a need I have to satisfy (get this fresh beers with your friends, you deserve it). Work-life balance is important in order to maintain my motivation and willingness to do more. The same may apply for you.
  • Organize. Everyone knows it. Use some very cools web-apps like Asana with your Google Calendar. There are lots of apps but the one you want are the one you’ll use on an everyday basis. My roommate waits to be really stressed with the deadline to start working. I don’t feel like this solution is the good one. Divide (your time) and conquer.
  • Optimize time. I was reading this interesting article when I realized that I don’t spend anytime in front of the TV. I listen to podcasts or audio books during my commute to go to Lille so I can learn new things while driving my car. I also check my e-mails while waiting in the grocery store:

Our phone offers 5-second choices like “checking email” that feel better than waiting in line. And it offers 30-minute choices like a podcast that will teach you that thing you’ve been dying to learn, which feels better than a 30-minute walk in silence.

[…] The average American now watches more than 5.5 hours of television per day.

It was an incredible experience and I wanted to share some thoughts about this year. The University of Technology of Compiègne is a place where smart people are willing to do always more, may it be for the student life or the professional life. I was really impressed by the people I met, students or professors, and I will miss them, for sure.

I want to thank benoit for all these opportunities he offered to me and for his sofa bed, his talent in the kitchen, and his toilets ‘cause Indian food is not for me ;-). This guy trusted me since the very very beginning and I had the chance to learn things I couldn’t have learned alone, in the classrooms or in my dark bedroom.

Equisense is a team of passionate people, coworkers, friends and pirates! ❤ Thanks to all of them for this incredible experience! I hope the adventure will continue and that the Equisense ship will go as far as possible!

Just don’t be afraid!

Embedded Software Engineer

Embedded Software Engineer