I love learning new programming languages
There is an opening at Codeborne. For experienced software developers who wish to continuously become better in their craft. For those who would like to work intensively in a pair programming setting, learn continuously new technologies, and write really clean and good code. To give them a bit better idea what it is like to work at Codeborne, we asked a few of our colleagues what they think. This is the interview with Mira. She is originally from Ukraine but has been making waves in Estonian tech field for a decade already. Before joining Codeborne a year and a half ago she developed for Fortumo and several other companies. During her time at Codeborne she has worked on projects for a Japanese energy company, a very successful Estonian start-up, and a Russian bank.
Mira, what do you like at Codeborne? What brought you here?
Some time ago I realized that it is not interesting for me to use the same language and development stack, developing the same product for multiple years. I like change and the learning that comes with it.
Therefore, Codeborne was a great option for me. I value the variety of tools we use. The possibility to work on different projects. I have been at Codeborne for a year and a half now and I have already worked on three different projects. I have worked with Java, node.js, Python. All completely different projects, covering different domains. Using very different tools and development stacks.
I even had a chance to write in a programming language that I didn’t know existed at all. It is called Lua. I had a chance to use it for a specific business problem. I value this experience a lot as I see how much I develop in the process.
Before you joined Codeborne you considered yourself a Ruby programmer. How is it that you have been able to work with such a variety of languages so quickly?
I have been a Ruby developer for quite some time. It is my favorite language and it will always be in my heart. I love it deeply and it is beautiful.
At one moment though I understood that I would like to have some variety. I was considering something closer to Ruby like Elixir. That search led me to Codeborne. We haven’t had a project using Elixir. Yet. But there is a lot of variety in the technology stacks that we use.
It is also awesome that it is in many cases up to us to choose which technology stack is best suited to solve the business problem of the client. We are all capable of evaluating the business task and choosing the correct tools for solving it. We are not limited to the tools we have gotten used to previously.
How does it still work that you start using the new languages so quickly?In my case I had some acquaintance with these languages. From my study and previous experience. Some things I knew theoretically. So I had some bases. But this is also a moment where pair programming we do in Codeborne is very useful.
If two capable developers come together and work in the same setting, the learning gets accelerated. Maybe we both have not used node.js as our main language, but when we start solving the business problem together, we can both bring our previous experience to the task and learn quickly from each other and the web.
At Codeborne, there is also always the option to go and ask others if there is some specific question about some aspect of the project and someone else has more experience with the domain or the technology we are using.
You have worked at different companies - what makes Codeborne special in your opinion?
What I value here is the direct communication with clients. There is no project manager. No middleman. I can talk to my client directly and understand the business needs and how to best meet the needs myself. I can make a decision of how to build the product myself. No one else does it on my behalf.
The decision making is up to me and my team. With this effort we can be totally confident that the architecture of the product is correct in our opinion.
What kind of people, do you think, would not enjoy working at Codeborne?
Yes, I think there could be some people that would not fully enjoy working here. We practice pair programming. I find it very interesting but if a person really values the possibility to work from home or in general would like a lot of private space and to work alone, it might not be a good fit.
Working at Codeborne means working with people all the time. It means communicating all the time. For some people this is great as it gives much more freedom, creativity, and human connection to otherwise very technical work, but for some people it might not work.
Also there might be some people who actually don’t like direct contact with clients. They might feel that they are speaking completely different languages. Developer speaks technical and the client speaks business language. If the developer is unable to bridge this gap then probably it might not be that good of an option to work at Codeborne.
This year you had a chance to mentor the Vali-IT interns that Codeborne has quite regularly had over the last few years. How was your experience with helping them get into software development?
It was an awesome experience. There were at least two aspects I liked very much. I got to learn a lot myself and I got to help them understand the best practices for software development.
It is often said that the best way to learn is by teaching. So I found it very enjoyable to be asked lots of questions during the daily code-reviews. It made me think about the things I already knew, sometimes look into some more details, and figure out how to explain them in ways that bright people who are beginning their journeys as software developers would understand It was a great learning experience for myself.
Also, I found it very uplifting to be able to share the best practices of software development with people who are just starting out. All the things I have come to love about good quality code - tests that really show that the code works, clean and easily readable code, and many other smaller tips and tricks - I had a chance to really instill this in the Vali-IT interns. It was a very inspiring process for me. I enjoyed it very much and benefited a lot from the process of mentoring myself a lot also.
Make sure to also read the other interviews
- Read the interview with Andrei for passionate discussion on
technical excellence, working closely with clients, developing great open-source projects, TeX and Codeborne out-of-office working week.
- In another interview, Jaan gives us a great overview of
the joy of pair programming, Test Driven Development, and what's unique at Codeborne