Nebojša Vukšić is an Android Developer, a founder of the Kotlin User Group Serbia and one of the organizers of the Coding Serbia Meetup. He is very active in the IT community, speaking to students and professionals, sharing knowledge and experience on Meetups, enthusiastic and passionate about his job. Nebojša chose Android and his career is rapidly growing, so we decided to ask him what are the most important things for the progress of a young Android developer…
How long have you been at codecentric? What are you currently working on?
I am working as an Android Developer in Codecentric for almost 2 years, mainly using programming language Java. Currently I’m working on a mobile client application for German cloud solution company.
What did you study and which university did you go to?
I completed undergraduate studies of computer science at the Faculty of Science at University of Novi Sad, and now I’m on the final year of master studies in Information Technology at the same faculty. Currently master thesis is standing between me and the new diploma and I hope that I’ll complete it soon.
What developer knows after graduation? Is the knowledge gained there enough to immediately jump from college to a project?
As for the knowledge we acquire at college I could say that it’s a strong basis for further learning and progress, but it is not enough to immediately jump into some serious commercial projects without any internship or practical experience. Of course, I do not want to scare students because that knowledge is really enough to get familiar with the technologies used in commercial projects. Moreover, a high level of dedication, perseverance and constant learning are needed, because knowledge does not appear over night.
What does the college provide you with that is of a great importance for the career of the developers?
As for FoS, I can say that what I’m grateful the most is the way of thinking, the ability of logical approach to problem solving and high level of understanding the basic principles of programming language. Technologies come and go, but the critical way of thinking and the ability to solve problems always remains.
What was the first thing that you learned in codecentric?
I’ve been in codecentic since the beginning of my career. A couple of my colleagues and me are called the kids of Codecentric, because we went through all the cycles that a student in this company can go through. From the selection process for internship, the internship itself, and after that work on commercial projects. Among the first things I learned here is that it does not matter how many years of experience you have, but how much knowledge you possess. If you’ve got a good idea for something, nobody from the older colleges will push you aside. They will consider your ideas and apply them if that ideas contribute to the project or our organization. In fact, the whole story in Codecentric revolves around this. Everybody is equal! In addition to this, I learned that if there is something you do not know or do not understand, make sure to ask someone more experienced. It is better to ask than to stay stuck on one issue, and thus waste time.
What are the most common problems that juniors have?
From my personal experience, I can say that the biggest problems of juniors are insecurity and lack of confidence in their knowledge and abilities. At the beginning, they are usually in fear that they’ll do something wrong. The best thing for progress of every young developer is to work with an experienced mentor. The mentor will recommend them all necessary literature, and teach them about methodologies and techniques which will boost their knowledge to the next level.
How do you improve your skills?
Fortunately, the Android community is very strong and there is a large number of excellent professionals all over the world from whom you can learn. All you need to do is to follow their blogs and tweets. In addition, there are lots of information you can find on Reddit and various public Github repositories. Of course, we cannot avoid Google Android Developer documentation. If you are person that likes to discuss about Android topics on our native language, android-serbia is a great slack channel for that. In addition to that, there are many Meetup groups here in Serbia eager to share knowledge. That opportunity any developer should not miss.
How important is the support of the colleagues? Who helped you the most and how?
Colleague support is vital for the progress of a young developer. All little secrets, how I would call them, you cannot easily learn from online tutorials and web blogs. Those things are learned and acquired through years of experience. That’s why you need experienced mentors. Like I already said, learning from them gives you the biggest benefit and fast forwards your development as a programmer. Since I am working on Android projects, at the beginning I got the greatest help from colleagues that are working with Android as well. Their influence on me through internship, and now with commercial projects, is of immeasurable value for me. Besides that, I am lucky that I have the opportunity to learn about clean and high quality code from all experienced people here, since we have great emphasis on that.
What is your motivation to share your knowledge and teach on Meetups? What is it that you can share?
Codecentric is pushing one thought that I accepted with joy during these two years I’ve been here. The thought is “Sharing is caring“! This thought encouraged me to share knowledge that I gained with others. Learning in IT should be a two-way street, the knowledge you acquire should be shared with others. Maybe with your experience and knowledge, you’ll help someone who has a problem that you solved before. That way the person won’t be stuck on it as long as you maybe were. I can share my knowledge about Android and my experience of working on commercial projects with others, and since I’m a big fan of Kotlin programming language, that is an additional topic I’m always happy to talk about.
What would you like to say to fellow juniors and students of programming departments in Serbia?
To all students and young developers I want to say to educate and to constantly work on self-improvement. Developer’s job is actually continuous learning and training. This is the most important thing that they need to understand in order to became successful in this business. At the end, one more very important message for all juniors and students: “Do not be scared to askwhat you don’t know! The worst thing is not to ask. That way the problem remains, and you lose your valuable time.”