Meet Adobe I/O: The Console Team on Collaboration and Overcoming Technical Hurdles
Adobe I/O Console gives developers access to Adobe APIs (including Analytics, Cloud Platform Data Service, and Sensei Content AI Services), SDKs, and dev tools to build on, integrate, and extend Adobe products. This central interface makes it easy to access integrations, whether they’re technical or for end-users, and among other things, you can inspect log and debug messages and connect applications to Adobe’s cloud services.
We caught up with the team — Carmen Sutter, senior product manager, Ana Luz Acevedo-Cabrera, computer scientist, and Tommy Williams, senior computer scientist — to find out what they do, how they collaborate with each other, what exciting changes to the Console have just been announced at Adobe MAX, and what kind of technical hurdles they needed to overcome.
Tell us about yourselves and your backgrounds?
Carmen: I’m the product manager for the I/O Console. You can read a bit more about my product management journey and background here.
Ana Luz: I’m a junior front-end web developer for the I/O Console. I came in through the Adobe Digital Academy, which helps people with non-traditional backgrounds start careers in web development and soon in product design (more info here). Prior to Adobe I was the co-founder and CEO of a hardware renewable energy startup (wave energy harvesting), and before that I was an earthquake engineer. I’m also a member of the Adobe San Francisco Emergency Response Team, so you’re in good hands!
Tommy: I’m one of the senior software engineers for the I/O Console. I have been developing for the web for over 20 years. Until recently, I spent many years developing mobile apps using PhoneGap before even joining Adobe. I’m currently focused on the front-end and UX of the I/O Console.
What is your role on the Adobe I/O Console?
Carmen: In my role as PM, I partner with engineering, program management, and design to determine and execute on our product strategy. What’s exciting about the I/O Console to me, is that I get to work with internal and external customers. The I/O Console is the gateway to extend, integrate, and build on the Adobe Experience Platform. We work with internal product teams to expose their APIs, Events, and soon Runtime functions to third-party developers. Developers can also find SDKs for Photoshop, Lightroom, and the rest of the Creative Cloud in the I/O Console.
Ana Luz: Up to now I’ve been involved in the front-end, so I handle a range of tasks from tackling random bugs to development of new components. I’ve also gotten a chance to be involved in the product design iteration process of new features to ensure the best user experience and make the product vision a reality. Ultimately, I love building things, so I enjoy seeing my work quickly come alive during development and production.
Tommy: I love the front-end of web application development. On the I/O Console I am one of two senior engineers focused on implementing the vision of the design teams when they craft new features or modify existing ones. I am also passionate about UX and try and let that influence the ways in which I implement new features. I also fix the usual bugs and typos.
How do you work with the team?
Carmen: Adobe is definitely a global company; the I/O Console team is spread across three time zones, three countries, and two continents but we interact with teams all around the world on a regular basis. We try to schedule meetings to be at reasonable times for most members of the team, though admittedly poor Tommy is getting hit the hardest with 6 AM meetings. About twice a year, we get the whole team together for onsites, which makes a big difference.
Ana Luz: I’m based in San Francisco, where half of the engineers are located. It’s certainly easier to collaborate in person, but I also feel the distance hasn’t gotten in the way of our progress with tools like Slack. In San Francisco we are also lucky to be in the middle of two time zones, so we catch Holly Schinsky in the afternoon (another senior computer scientist in Florida) when it’s morning for us, and Tommy’s morning (Australia) in our afternoons.
Tommy: I am remote. Really remote. The ‘on a different continent’ kind of remote. The team does a great job of accommodating that. Sure, I start as early as 6 AM sometimes, but I am a morning person anyway. Slack is a huge part of our workflow. I get up in the morning, catch up with the conversations that happened while I was sleeping and communicate as much as needed for the next couple of hours until North America winds down. From then I can work without interruption. BlueJeans video calls also help when you need to communicate complex issues quicker than you could type them or when need to share a screen.
What was I/O Console’s big news at Adobe MAX?
Carmen: One of the big announcements at MAX was the launch of the XD plugin ecosystem. We’re excited to play a key role in this project: Developers will be using the I/O Console to register and manage their plugins.
Why is this beneficial for developers?
Tommy: The Console is getting an entire new tab for the creation, management, and submission of XD plugins. Developers will be able to create plugins for XD that automate tedious tasks, integrate with third-party services, check designs against accessibility standards, and lots more. Here’s a blog post the sums up all the plugin features.
Were there any technical hurdles you needed to overcome with I/O Console?
Ana Luz: The biggest hurdle for me was getting used to a new codebase with none of the original architects there to explain the logic behind some of the choices. In spite of that, the senior engineers on our team made the time to put together helpful documents and diagrams, as well as set up additional meetings to make sure everyone was caught up on whatever they understood at the time. I think that’s when I learned about the power of our team camaraderie as we treaded unfamiliar territory while being constrained with tight deadlines.
Another hurdle was learning new frameworks like Angular. Prior to the I/O Console I was very comfortable working with React and React-Spectrum, so it has been an adjustment working with Angular and not being able to take advantage of all the useful new components coming out of React-Spectrum. However, these constraints have given me a greater appreciation for all the work that goes on behind building UI libraries and frameworks, and the development time we save when leveraging these resources.
Tommy: Our team took over the I/O Console earlier this year. The Console was already an existing system well into production. Adding an entire new feature to an existing system in a short period of time can always be challenging. Adding to someone else’s code means getting into their head and adopting their mindset in some ways. There is a lot of learning involved. In my case this meant learning Angular 4 and other frameworks I hadn’t used in other apps I had developed previously.
What’s next for the Console?
Carmen: I/O Runtime, Adobe’s serverless technology, allows developers to quickly deploy custom code to respond to events and execute functions right in the cloud, all with no server setup required. Runtime is currently in private beta, but in the near future, developers will be able to execute those functions right inside the I/O Console. We have an exciting pipeline of Adobe APIs and I/O Events in the wings, so keep an eye on our blog for announcements on those.
Tommy: We are continuing to iterate and improve the Console in general and the XD plugin ecosystem features in particular, now that Adobe MAX has wrapped up. I would also like to continuously re-examine if we are being as caring as we can be for our users with regards to UX and performance. Nothing is truly static on the web.