At Appsilon we strive to be the global leaders in R Shiny. We develop some of the world’s most advanced Shiny dashboards and have a team of talented individuals. We asked one of them – Alexandros Kouretsis, R/Shiny Developer about his career path and experiences within the R community.
Read to find out more about:
The main goal of an R/Shiny developer is to buildfuture-proof solutionsthat alloweasy access to data. As an R/Shiny developer, you design tools useful to data scientists and decision makers. To do that, you must use many aspects of statistics in production and understand complex and domain-specific processes. Our job is quite versatile and ranges from building data pipelines, reproducible reports, and informative data visualizations, to developing packages, or high-quality, state-of-the-art data science applications.
Normally, I start a day with a strong cup of coffee. Then I jump into some internal meetings to catch up with other team members on what’s going on with the tasks at hand. This is particularly helpful because I work on a distributed (remote) team, with colleagues scattered across five different continents. That’s why internal communication plays such a significant role in ensuring knowledge transfer.
I have regular meetings with clients, as the solutions we develop are quite complex and normally require some domain-specific expert knowledge. I enjoy learning new domain knowledge, but it’s important to work closely with the experts. By keeping clients in the loop and maintaining ongoing communication, we ensure that the development process is on track. This is actually something that makes programming extremely enjoyable for me – being involved in the creation of tools used in a scientific context.
I also dedicate a significant portion of my time to ‘good development practices’ – refactoring, testing, pair programming, and code reviewing. I regularly go through some online resources to keep up to date with news, current trends, and practices within the community. Internally, we also have many interesting guilds for developing further our skills, for example, guilds for javascript and for building beautiful UIs.
In between my meeting and coding, I take regular breaks. I think it’s really important to dedicate some time for a proper lunch or having some coffee with the team. It can have many long and short-term benefits to your performance and overall team spirit.
Finally, if I have some spare time at the end of the day, I try to do some open-source contributions.
Currently, I’m working on a project in biotechnology. I’m cooperating with a large team comprising several different groups of developers, data scientists, and stakeholders. The main objective of the project is to increase the data science capabilities of a Big Pharma company. Using [tech] we want to enable quick, data-driven decision making based on the results from clinical and pre-clinical trials. This process requires an integration of diverse big data sets and the development of data science applications. Our goal is to derive new insights about illness targets, investigational medicines, indications, and patient biomarkers.
I have met many successful R developers with awide range of backgrounds, from engineering and computer science to natural and social sciences. It actually makes me really happy, because it creates realdiversity in the R community.
This also means that there isno one formula for becoming an R/Shiny developer. Everyone has the potential to bring new and fresh ideas to the table, making well-coordinated teams of R/Shiny developers as efficient as a Swiss army knife.
My background is in Astrophysics and Cosmology, a topic that combines huge amounts of data from different sources and instruments, with various branches of physics and mathematics. I was gradually exposed to R and finally, I made the decision to leave the academic world and join the IT industry as a data scientist.
From early on, I collaborated with a lot ofweb developers, and this gave me a very useful and practical skill set. The web is a powerful thing these days, and almost all types of communication within organizations are done via web technologies. At the end of the day, Shiny is also a web framework. Understanding how tohandle the complexities of reactivity, and how theclient and the server communicateis a one-way road if someone wants to delve deeper into this technology.
Tricky question as I am very satisfied with my career path so far and enjoyed my personal development process. Although looking back at my early days in academia, my lifewould have been much easier had I been exposed to the R ecosystem earlierand used its amazing tools for statistics, data manipulation, visualization, and report writing.
One of the major challenges in my line of work ismaintaining a high level of code quality while meeting all customer requests with evolving and changing requirements. However, it’s really important to stick to solid practices even when under pressure. Not skipping testing, avoiding shortcuts, and giving peer reviews enough time, always pays off in the long run.
Another professional challenge is tomaintain a mindset of a data scientist and a developerat the same time. You must dig into the data andunderstand the science of the domain you are workingon while keeping a high standard of software engineering during the development process which is usually a full-stack job. That makes R/Shiny developer a kind of a dual role at times.
I really enjoy working withhighly skilled colleagueswithdiverse backgrounds. The R community is welcoming, generous, and inclusive. This is also reflected in the R ecosystem, where packages are held to very high standards, delve into a plethora of topics, and have in-depth functionality and great documentation! This environment’s abundance of diversity and vibrancy fosters a “never stop learning” mentality.
If I had to pick just one, my latest involvement with the pharmaceutical sector would stand out. It’s a very important applied field that has a huge impact on our quality of life. I am proud and thrilled to be a part of the cutting-edge teams working on antibody therapies and drug discovery, developing drugs that can help millions of patients with serious diseases live better lives.
I am also glad that I had the chance to contribute to research andopen source.
The development of data science applications is a complex process with many different groups of stakeholders involved. That’s why good communication and good team spirit are crucial components of success. Having this in mind, some of the qualities that help keep projects on track and can reduce the overall pressure are:
My first steps in R were taken with the swirl package, which teaches R right in the console! “Perseverance, that’s the answer.” a quote from there goes.
The post A Day in Life of an R/Shiny Developer appeared first on Appsilon | Enterprise R Shiny Dashboards.