Working at a Startup

My Codetrotters Fellowship Experience

** Originally written on July 5th, 2016 **

For the last month, I have been working as a software developer for a new austin-based startup called Elephant Labs as part of Codetrotters’ Summer 2016 Fellowship Program. As my first time working full-time for a startup, it has been one of the most challenging yet rewarding professional experiences I have ever had. This is a brief recap of everything I’ve been doing as a Codetrotters fellow.

Working on Elephant Labs’ Project

I am grateful for having the opportunity to work on Elephant Labs’ main project, which –– I am not allowed to talk about yet, but I can say that it –– revolves around automated customer service and communications *wink*.

One big advantage of working at a small startup is that, since there are not that many people working on the product, you are more involved in the process of developing and designing it. This means two things: 1) even as a new developer, you get to make engineering & design decisions that have great impact on the product and 2) you have creative freedom, thus allowing you to experiment with new technology and making changes at the speed of your fingertips.

What I love about working on this project is that I have been involved in all the processes of the product’s development; from its conception, the design and development of the technical infrastructure, to user experience design and usability. Often I have the liberty to think, suggest, and sometimes even decide which paths we should take in the development of the product, which is a great learning exercise.

This power, however, comes with a big responsibility. Since your work directly impacts the future of the company, it is very important that you do your best to deliver the best product quality possible, keeping in mind things like usability, efficiency, maintainability, testability, scalability, security, and many other quality factors; especially when working with technology that is not opinionated or standardized because of its young age in the market.

That’s another thing that I like about the project: I’m working on an innovative product based on cutting-edge technologies and platforms that did not exist months ago.

This is definitely challenging; most of the problems that we stumble upon are usually problems that no one has faced before. This makes this problems harder and intimidating, but also more interesting and rewarding. The key to solving new-technology problems is to keep our minds open and fight misconceptions that we bring when trying to compare one technology to another.

Elephant Labs has given me the opportunity to rethink everything I know about software development and, of course, learn more about the things that I didn’t know yet. There is still much to learn, and I’m excited to see what’s in store.

Civic Hacking & Open-source

Another important activity I did in Austin was civic hacking. Within the first week in Austin, I attended ATX Hack for Change which is a civic hackathon –– a civic event (mostly about programming) designed to develop projects that help the local community.

I am the one in the far left in the second picture.

We built and open-sourced AuctionBot, which is a Messenger bot that makes fundraising for non-profits and charities fun and easy via a very simple, addicting user experience. It does not only run the auction of different items simultaneously, but it also notifies bidders when they have been outbid, and handles the whole checkout process via Stripe.

It was a very unique experience, not only because of the unusual nature of the project or the great teamwork required for building it, but also for knowing how a clever idea like this could help non-profit organizations make more money to support different communities.

Conclusion

I am grateful for Codetrotters and Elephant Labs for trusting me, and giving me this once-in-a-lifetime opportunity. I am certain that this experience will expand my horizons, and open up even better professional opportunities in the field of software development.