In September 2022, EPAM Anywhere held our first ever Coding Challenge for software developers from Colombia. We have initiated the competition to mix the joy of gaming with coding, network with each other, and celebrate the winner — Yasser Greyeb.
I saw a post about a gaming competition at EPAM Anywhere on Instagram. I was hooked, so I read about it and thought that I could do it.
We asked Yasser to share his impressions of participating in the Coding Challenge and sum up the key takeaways any future participant might expect.
Coding Challenge: a quick recap
In our first EPAM Anywhere Coding Challenge, software engineers from Colombia came together to compete in building a gaming bot to test their programming skills. It wasn’t only for this, though — the winner got a Sony PlayStation 5 as a prize!
The easiest part of the challenge, I guess, was that I didn't have any trouble at all creating the client because it was straightforward. I'm familiar with Java and very familiar with Spring Boot and the Spring Boot starters. Also, I'm very proficient in looking for information on Google.
During this 5-day challenge, the players were rambling around the fields, planting potions, and moving from cell to cell strategically so that their hero stayed alive throughout the day. Each time their planted potion destroyed something on the map, they scored a point. The player with the highest score was announced the winner of the day.
As you may have guessed, it took the players some time to test the logic and see which algorithm would keep Molly the longest alive in the field.
Our Coding Challenge winner Yasser used screen recording as a helping tool for him to fix concurrent issues with the logic when the bot suddenly got stuck. Replaying the video recordings gave him initial clues on how Molly got into trouble, and he would instantly start thinking about solutions.
I would say the hardest part was encountering gradual delays every day. I was trying different strategies, but they were not making any progress. In the beginning, I had this pathfinding logic, and it was great, but there were other factors that were making me lose a lot of points, especially when my Molly died or when my Molly was stuck in an infinite loop. So, the hardest part was trying to resolve these little edge cases. Once they occurred, they prevented Molly from gathering any points at all, right? So, when I experienced an edge case, that was it. I was done for that round. And I had to wait until the next round.
Do you have to be a professional engineer to participate?
Yasser, for example, holds a bachelor’s degree in Electronics Engineering and, after working for a few years as a business analyst, took up courses in Java and moved into an engineering department at the company he’s currently with.
What’s in the Coding Challenge for you?
To begin with, our Coding Challenges are lively events for programmers to have fun and try their skills in a friendly rivalry. There are other reasons to participate as well. Let’s see what you’ll get by signing up for the next Coding Challenge.
Experiment with technology
The coding game is a means of practicing your coding skills to test your theoretical knowledge and get exposure to new technologies. You are given an opportunity to try out new technological solutions, play around with your code, and even build your own bot architecture.
When I started working on my bot, I wanted to bring it using the string flux. I took a few ideas from the client that you guys provided, but I implemented them all from scratch with my own architecture.
Learn by playing
A forever learner’s attitude is highly valued in today’s working environments, and the abundance of learning opportunities is there to feed your curiosity and drive.
The Coding Challenge is one of the ways of improving your skills. It’s a playful experience that will boost your dopamine level but will also offer a cool way to divert from your daily coding tasks and test out your skills in a completely new environment.
Our winner Yasser is still on his continuous journey of learning and trying out new technologies — his curiosity is what brought him to the Coding Challenge in the first place. In the past years Yasser has worked on a variety of projects, and based on his experience he highlighted:
Right now, learning opportunities are the biggest motivation in work for me, doing all the research to see what technology is the best for the job. I think that's the most important skill that I learned in these last two years — the ability to effectively adapt to new technologies.
Network with other professionals
The EPAM Anywhere Coding challenge also acts as a cool networking environment. It is a chance for you to meet new people with various backgrounds and get exposed to new perspectives — both professional and personal.
It can also help you enrich your skills and learn from peers who get together due to their shared interests and goals.
I'm active in attending networking events. I try to show my support and take the opportunity to learn new things.
If you are interested in our coding challenges or other networking and learning opportunities at EPAM Anywhere, join our coding challenge community. Have fun and see you there!