Lattice Updates

“There's an interesting blend of innovation, experimentation, and learning:” on Developing Software at Lattice

September 27, 2019

Ricky Zein is a Software Engineer and Tech Lead at Lattice, where he’s worked for over two years. Here, we talk to him about how mentoring led him to Lattice, what makes our engineering culture unique, and why the people are what makes Lattice so special.

How did you get your start in engineering?

I don't really have a background in engineering. I went to a bootcamp; I went to App Academy in 2013. Before that, I studied Anthropology and Global Development Studies, and I worked in non-profits for two years, living in San Francisco. People in my social circle had started to make the jump from non-profits to startups, and it became very hard financially to hang out with them. 

After getting into App Academy,  it was kind of like, "I'm in. This is my chance. This is going to be my profession from now on. And so I had better learn how to walk the walk and talk the talk." It was a very drastic change for me coming from an industry with a very different culture.

After App Academy, I worked at Teespring with Eric [Koslow] and Jack [Altman], and a couple of the other folks here. My early days working with Eric are really the most formative years of my engineering life. 

App Academy taught me the basic building blocks of how to build things; Eric gave me a foundational philosophy in how to write good code — around what it means to consider code as craft, what it means to be super diligent about how performant your code is or how readable your code is. It was important for me to have that mentorship early on. 

How did that shape you as an engineer?

Finding a good mentor early on is very important because that's when you really don't have any opinions on how to write code. You’re just trying to get something to work. And you don't really have any bad habits formed yet. You learn by example.

Working with Eric motivates me to think critically beyond just code — not just about how to create good technology, but also how to create a good business. That's a valuable — and rare — balance for an engineer to have.

How does engineering here at Lattice compares to other places you’ve worked, and how does that influence the type of people who want to work at Lattice?

There's an interesting blend of innovation, experimentation, and learning at Lattice that's different from what I've seen in past experiences. This can be challenging at other companies, where you had to deal with red-tape when it came to introducing new technologies or getting certain things into production. We're a small engineering team and we're always willing to try new technologies.

One of the things that draw people to Lattice is our "modern tech stack". We have a Node backend, React front-end, and a GraphQL API that makes developing across the stack extremely pleasant. When Lattice was still early, not many companies were making such heavy use of GraphQL in production. The experience of using nascent technologies has had its ups and downs, but it has always been exciting. A lot of engineers come here because they want to learn something new.

What’s the team like, and how do you all work together?

Everyone's very humble and super open to learning and feedback. People are really focused on getting the job done and doing less if we can, and really delivering a solid product. The engineers are very technically motivated, but we're all very product-focused. We all care deeply about the product that we're delivering at the end of the day.

Also, everyone has their sort of little quirks and they have a variety of interests. Byron is really into poker. Jay's really good at bowling. It’s fun getting to know people on a personal level.

What about you? 

I like surfing. I'm really into fitness. I led a couple of fitness classes at our last company retreat, and it inspired me to run my own fitness classes outside of work. 

How do you think Lattice has changed since we first joined?

[When I joined], we were still in a phase where we were trying to figure out what was sticky, what customers really liked. Then we had reviews and that was kind of wake-up product, and then we did surveys. We were still kind of in this experimentation phase. 

Since Lattice has grown and we have more customers who are just larger in size, our focus has been on really solidifying our product, and creating product development processes that help us deliver a very solid product in a very short amount of time.

What's your favorite part of working here?

It's the people. Where you work is where you spend a lot of your waking life, and so it's really important to me to have good coworkers and I enjoy working with the people here. While we want to change the way people work and grow, we don't think more highly of ourselves than we should. We're very grounded in the kind of business we want to grow.