SoundCloud for Developers

Discover, connect and build

Backstage Blog January 18th, 2018 Learning Diversity Recruiting Insights from SoundCloud’s DeveloperBridge trainee programme By Tiffany Conroy

Back in 2016, the SoundCloud People Team and engineering management collaborated on an effort to bring more junior engineers into the company. The result was “DeveloperBridge”, a paid junior engineering programme that would run for 12 months, based out of our Berlin headquarters.

Trainees would gain hands-on experience under the guidance of our engineers. By working on a variety of tasks in selected teams, they would experience different types of engineering tasks and technologies to develop a feel for the areas they enjoy working in most. The aim of the programme was to develop and hire the participants afterwards into full time roles at SoundCloud while improving diversity in Engineering at the same time.

Now with their traineeship year coming to a close, we’ve asked the participants to reflect on the experience, what they learned, how they feel about their accomplishments, and where they see themselves headed next in their careers as software engineers.

Suzanne Wood

The DeveloperBridge programme exposed me to different teams so I could both improve my programming skills and learn more about how SoundCloud enables users to share and discover music. I learned new programming languages and developed confidence in my ability to pick up more.

Over the course of the year, I worked on web development and data processing projects. I created features for and improved the UX of an internal web app using React, Typescript, and JavaScript, and made a web service using Ruby, JavaScript, Mustache, and regular expressions. I also created ETL (Extract, Transform, Load) processes using different methods to find which was the most efficient, and used Spark and SQL together with the Tableau analytics platform to enable flexible display of data.

During the programme, I also learned new approaches to tackling problems. For example, it is good to make small iterative changes to code, because if you make too many changes at once, errors can become blockers. Through collaboration, we shared ideas and approaches, leading to a more maintainable and consistent codebase. I also really like the hardworking yet relaxed office atmosphere — especially the office dogs!

I now have a feel for what programming is really about: it is abstract and creative, and requires a lot of thought to design a system well. This appeals to me so I will continue to pursue it as a career. In particular, I’d like to continue with frontend or full-stack web development roles — I like delivering something tangible that people can use and appreciate, with clear and consistent designs.

Suzie has accepted a full-time position in the SoundCloud Payments Team.

Find Suzie on the web:

Mike Smith

Some things about joining SoundCloud for the DeveloperBridge programme met my expectations (ping pong tables! bean bags!), many didn’t. I didn’t anticipate how much work goes into doing seemingly simple things. I had expected something more structured, but the refreshing reality was I had the opportunity to pursue what I was interested in and motivated by, and was allowed to develop at my own pace, which suits my working style completely.

At first, Scala was a challenge, but the support I got, and the freedom I was afforded, led me to be surprised on a daily basis about how much I can understand.

The people I worked with had years of experience, and were well-versed at being productive in technology. Observing their behaviors and attitudes gave me an insight into what it takes to work at a high level — something difficult to teach. I also found I learned most from those with more diverse backgrounds, who could sympathize with being the ‘odd one out’ in the team, as opposed to the people who were the best technical coders. If the company is to continue developing junior talent, fostering diversity must be a key aspect.

Extensive experience with the React/Redux/Typescript/Webpack stack has put me in the position where I’m able to advise other people on these technologies, allowing me to in some way pay forward all the help I’ve had from other people along the way. I now consider myself a professional software engineer, something I would not have believed if you told me a year ago. I’d love to continue developing my skills and eventually use my experience to teach others who want to take the same path I did.

Mike has accepted a full-time position in the SoundCloud Core Clients Team.

Find Mike on the web:

Lucy Clarke

A few people I knew who worked at SoundCloud told me I would be working with some of the kindest and smartest people they knew — and they were right. I was super excited about the position coming from a music industry background and having used SoundCloud as a music discovery tool for years.

For most of the year, I have been working on an RSS service for podcasters. This service is built in Scala and replaces an older service that was written in Clojure. I had no previous experience with Scala and had zero exposure to lisp languages. But along the way, I became competent in Scala and able to work my way through Clojure code. I am proud of the work I did on a useful service for podcasters which serves a lot of traffic — podcasting is a segment I care a lot about.

As the RSS service for podcasters was essentially a new project, I was able to be involved with all aspects of building the service from coding, to integration with CI, Docker, Kubernetes, alerting monitoring and scaling traffic between the old and the new service for fast feedback. As the previous service had not been touched in some time, we were also able to reconsider previous decisions around logic. I know more about podcasting, xml, aggregators, and iTunes than I thought possible.

Surprisingly my pun game also really improved.

I want to continue to develop my skills as a backend engineer. I would love to keep working on products that enable audio creators to do their best work.

Lucy has accepted a full-time position in the SoundCloud Royalties and Reporting Team.

Find Lucy on the web:

Thea Kupler

My “Rails Girls Summer of Code” placement was hosted by SoundCloud, followed by an internship, so I was already introduced to the company infrastructure and culture. I was excited to have found an environment in which I felt comfortable and supported.

I worked in several teams on several projects during the programme. I worked on building a web app to view and compare event data stored in Hadoop, rewrote Java components in Scala, added functionality to a React frontend, and contributed to a Ruby web app. In my final project, I am contributing to a web app written in Clojure. My work includes generating folders and files, zipping everything up and pushing everything to Github automatically. This also reminds me of another a thing I have learned, and will always still be learning: git, git, and git.

I am proud of everything I accomplished. I took the opportunity to give demos in front of the company. I got the support to share and celebrate my pride and work.

I gained confidence in what I am capable of, which helps me focus on learning, improving, and tackling new challenges rather than wasting my energy on feeling like an imposter. I still remember the moment where I suddenly started explaining and defending my code choices rather than just silently implementing what I was told to do differently.

I’d love to shift my focus more towards backend web development, either building up the knowledge I already have or learning something completely new, especially working for a non-profit organization or one in the field of sustainability. Long term, I want to foster my passions in a more balanced way: less coding & hacking, more coaching & healing.

After 18 months of self-led training through prior internships and this programme, Thea has chosen to leave Soundcloud to take some time to pursue other personal and professional options.

Find Thea on the web:

Marina Mircheska

I saw the programme as a perfect start to my career in the industry. My interests as a Computer Science major were scattered across a few areas, and I was delighted to have the opportunity to find out what fit best. Moreover, this was about to happen in a very cool Berlin startup, with an international team of specialists.

For the better part of this year, I worked on Deep Learning for content-based music recommendations. Deep Learning is a hot topic, and I got an exciting chance to work with real data and have all the computational power I need.

The DeveloperBridge programme was my first opportunity to apply an abstract concept from textbooks and research papers to real data, and the challenges I faced, surprisingly, were not only on the theoretical side. It took some long thinking about design and optimization, experimenting and testing every step and decision while laying the infrastructure of the project. It was a while before training the neural network and getting initial results, and then a different kind of challenge arose — how to debug a machine learning algorithm.

I also worked on a real time recommendation service thereby improving my Go skills, built Tableau dashboards for analytics purposes, wrote ETLs using Scala and Spark, and did some exploratory data analysis using Python Notebooks.

Furthermore, I learned how to be part of team meetings, participate in discussions efficiently, while at the same time keeping communication healthy, fair and respectful. My supervisors and my mentors set an example for patience, generous teaching and efficient collaboration, and because of that I will definitely be a better team player in the future.

During my master’s degree, I focused on Data Science and Algorithmics, and my time at SoundCloud helped me gain the experience of a junior Data Scientist. Considering my interests, I will try to build myself as a Machine Learning Engineer in the coming years.

Marina has accepted a full-time position in the SoundCloud Discovery Team as a data scientist.

Find Marina on the web: