Introduction and Greetings -- Tobias Schlottke: welcome to the podcast. Guest Introduction: Dr. Daniel Hauschildt --
Tobias Schlottke: I'm your host, Toby, and today with me tuned in from Hum City I want to welcome Daniel Hauschildt, or should I, should I better say Dr. Daniel Hauschildt. Daniel is the co-founder and CPTO of a company called IMG.LY, and he. Is a rare example of someone who has like a, a, big academic footprint and also a lot of entrepreneurial, entrepreneurial drive because he's holding a PhD in electrical engineering for whatever reason.
Tobias Schlottke: She, he has to tell us later, um, robotics and masters in computer science. Um, uh, Daniel, like what's, what's behind your, your, uh, academic, uh, Dr Daniel Hauschildt: I mean the short version you can deep dive later. Daniel's Academic Journey --
Dr Daniel Hauschildt: The short version is I started computer science with electronic engineering in the beginning. I was a bit bored, so I decided to do both things in parallel fully, electronic engineering. Went into robotics, was a lot of fun. I was involved in a lot of these robotics competitions.
Dr Daniel Hauschildt: back then. And at some point, to be honest, I was asked, Hey, do you want to stay at the university and do your PhD? And I was pretty involved. And at that time, to be honest, I was pretty much into math and, and, um, robotics and all these things. So I went on with my PhD and, um, learned a lot in this time. And, but in the end, I can tell you already, I realized that academics is not for me for Tobias Schlottke: So you ended up
Tobias Schlottke: building SDKs and, uh, that is what we want to talk, uh, talk about today. Pivoting IMG.LY -- Tobias Schlottke: Um, you founded, uh, IMG.LY in 2017. Um, and, uh, I think you pivoted, right? It was basically like, uh, image hosting service or something?
Dr Daniel Hauschildt: Yeah, it's a bit more complicated. The namIMG.LYly exists far longer. It was one of the first hosting services for images for Twitter, before Twitter even had images. Uh, it was still part of an agency where I started back then. They had this domain and this name, it was not its own company. And that's where the name comes from.
Dr Daniel Hauschildt: That's where everybody knows the IMG.LY domain from. And then from that, and everybody knows Twitter got their own images. And at some point it was not a point anymore and not nothing to build a business on. And, but the image and this term on photo editing and photos in general was still there. And when we then came to this IMG.LY idea, which is.
Dr Daniel Hauschildt: And the last one is, where we get to it later, like photo editing SDKs and such. This name was a really good fit and we took this name and the brand and basically then started the SDK Tobias Schlottke: And, and, yeah, that's what we want to talk, talk to, to talk about today. Um, the, the art and science of creating SDK businesses. I mean, it's a really niche topic, right? Um, but, but I think it's,
Tobias Schlottke: it's super interesting what you did there and why. And who else is successful there and what the key success factors are. Um, but, but, um, yeah, maybe we, we, we, before we dig deeper, we, we start off with your node pool. Um, I mean, you already, uh, told us a bit about why, why you went, uh, went more towards this direction, but, um, maybe like, how did you get into computing? Let's, let's start with that. Daniel's Early Interest in Computing --
Dr Daniel Hauschildt: Yeah, this has been a long time ago. I don't even remember if I was 12 years old or something. I basically, even younger, I started with the C64. You probably remember that one before the Amiga even, like, typical playing around with it, gaming, et cetera. Um, but then quickly got interested in all these building stuff with a PC more.
Dr Daniel Hauschildt: That was always me. I was always more like the building something guy and the PC was a tool where I could use it for, right? And, um, yeah, like, I think there are many people in our group here which have a similar background, like, starting early, it was 13/14, and played around with it, and at some point, and really honest, I started with it.
Dr Daniel Hauschildt: I didn't want to pay for games, you know, I was, and then I went into all these things about, um, learning how to, how do you say that without going to jail, learning how to go around the checks of games in entering your keys. And that's how I basically started learning about programming and all this.
Dr Daniel Hauschildt: Architecture, assembly language, but to be honest, back then I didn't really know what I was doing. I was going through tutorials, trying to pattern match things. And that's how it all started, how I got into that. Um, but this was just a side quest and that got me into programming and building stuff. And from there on I started with, you know, Pascal back then.
Dr Daniel Hauschildt: Uh, even before my C pass, um, back then. Yeah, I got really interested, did many side projects and then at some point started computer science Tobias Schlottke: And, and IMG.LY's Business Model and Growth --
Tobias Schlottke: now you sometimes, or in a way run a SaaS business, uh, which isn't really a SaaS business because. You basically don't have to host a software and don't have to have to offer it to your clients. But as I'm from, from the SaaS world as well, like I, I, I'm tempted to ask about your rough ARR numbers Dr Daniel Hauschildt: Let's say it's above 5 million currently and Tobias Schlottke: above 5 million. with like, and, and how big is your team?
Dr Daniel Hauschildt: It's like almost 50 people right now Dr Daniel Hauschildt: all over Tobias Schlottke: So that's a good, uh, good, good revenue per FTE or nice. And. Dr Daniel Hauschildt: Yeah, we can also later talk about where we're going now and why that is maybe Tobias Schlottke: Okay, cool. Let's do that. Documentation in Developer Marketing --
Tobias Schlottke: Um, and, uh, let's, let's start with maybe like a very broad picture on the best kept secrets of, uh, building an SDK business. Like what is, what, what, what is, what is important to know?
Dr Daniel Hauschildt: It's important to know that just building something and saying there's a library on GitHub is not enough. So I, we learned a lot that Marketing, in a sense, developer marketing, like having really good documentation, uh, and examples, et cetera, makes a good SDK in the end, right? Because just having some functions and having some docs is nice, but once you get into a really complex system The other developers also have to understand it and see what's good for, what they can build with it.
Dr Daniel Hauschildt: So it has to be found, you have to rank well for all the different cases you're working on. So pretty similar to many other things, but the developer is your target group basically, right? And in our cases, even a bit more, more complex or good, depends how you see it. We have the developer, but also partially designer and the product manager.
Dr Daniel Hauschildt: It depends a bit what part of the SDK we talk about, because in our SDK, many people would think about an SDK as some library and some functions, but we also provide the libraries, the functions, but also full out of the box UIs, more like a white label solution. And you can go from starting to drop it in like a white label solution with some connection points we have to integrate up until a headless system where you build.
Dr Daniel Hauschildt: Everything on top yourself and customize as you wish. And we have to go through all the loops. We go developer experience, we go through user experience and everything as an Tobias Schlottke: Cool. And you also, I don't know, measure, um, the acceptance in all of those areas or.
Dr Daniel Hauschildt: We try to, but really, really honestly, it's more, we try to focus on like other core KPI numbers and try to think hardly with much of experience, how to improve those typically generation conversion rates, customer lifetime values, like very Tobias Schlottke: Okay. Okay. Um, and so, um, basically a good documentation is the best kept secret then.
Dr Daniel Hauschildt: I would say so. Honestly, that's what I learned the last one or two years only, to be honest. Because before we, you know, how it is, you have a lot of developers who think, you know, they know what to build for other developers. And they all like documentation, but they Dr Daniel Hauschildt: don't like writing documentation in general.
Dr Daniel Hauschildt: It's a bit unfair, but it's like that. So mostly, even if everybody says you need to do documentation, why they have to do it, it becomes something like, Oh, there's the function call. Here's the parameters. They do something. Must be enough. They will figure it out, but definitely that's not enough. So you need this really good experience in integrating your SDK.
Dr Daniel Hauschildt: And this includes definitely documentation. We have lots of showcase examples. You would see this also with others for sure, right? These days. And so this is, I would say the things that you might not think is the most important one or one of Documention Inspiration -- Tobias Schlottke: Do you have any companies you, you look up to? I mean, Stripe is like a classical example of, of a very good documentation. Um,
Dr Daniel Hauschildt: Yeah, definitely Stripe has, to be honest, always been one of our references for good documentation. Uh, for a while it was Twilio, I think today, not anymore. Um, and, um, but also for sure, we look up to some other SDK companies because of details, which separate library integrations from, let's say, um, what you, what you call SaaS in the beginning where you call against the cloud APIs and the heavy lifting is done on the servers.
Dr Daniel Hauschildt: Um, and you, you asked before, there are some others I can mention, which, uh, really paved the way a bit, um, and are like, like PDFtron or pspdfkit from Peter Steinberger before, which is no name differently, they are rebranded, but that's, uh, they have always been a reference up until today. Um, and now I would say we are on par, to be honest, but we looked up to them in the beginning. SDK Business: Technical Challenges and Solutions --
Tobias Schlottke: okay. Um, and, um, like, yeah, not having cloud functionality hosted, um, and taking care of that. Actually seems to be quite like stressless for me. Like, uh, not, not having to, to provide that, that like constantly running service and, and SLIs, SLOs, um, that, that seems to be like at first easy. What, what are the, the hard parts of it?
Dr Daniel Hauschildt: You're right, it seems easy and it definitely has some advantages when it comes to what you have to pay for. Uh, on the other side, Cross platform functionality Platform/client/hardware agnostic -- Dr Daniel Hauschildt: so we are doing photo editing, video editing on the client. And, um, we, I think our problems relate more to problems people have when they're building games. That this game has to run everywhere smoothly on every different platform.
Dr Daniel Hauschildt: Just think about every browser is a bit different. Then you have a different Dr Daniel Hauschildt: PC under it, different hardware in it. And we leverage hardware acceleration because without it, it's too slow. And so we run more into this complexity of supporting different browsers, different hardware, different systems. And when it comes to mobile, I can tell you the story about supporting Android.
Dr Daniel Hauschildt: And this is, um, I wouldn't even say it's a mess, to be honest. We do it, but it's lots of effort to get it running on all the different devices. But it's also a selling point for us for sure. Once you solve it, and I just realized also it's really hard to do it, to get video encoding, decoding, and all that stuff working, then yeah, you've, uh, a moat more or less, right?
Dr Daniel Hauschildt: Because it's, uh, not so easy. And that's, that's, uh, I would say the bad part, right? It's. Running it everywhere, especially if you have to do all Tobias Schlottke: Like web development in the early zeros or something, right. Then when there was still IE6 and everything was bad. Yeah. Dr Daniel Hauschildt: Yeah, I can tell you for us, Safari is the new IE6 because, um, let's say Chrome supports more modern APIs for acceleration than, uh, like WebGPU,
Dr Daniel Hauschildt: for example, or I don't know, video encoding, that's all still not that available on Safari, which makes our life a bit more like the EE6 area. To support those, you have to do extra Tobias Schlottke: And, and, and everything you do is basically native for multiple platforms, right? Like iOS and Android, et
Tobias Schlottke: cetera. And then you have to be able to support all those devices and be able to support, I don't know, Chinese phones, uh, that, uh, you can, you can buy on Aliexpress, uh, same as, uh, I don't know, uh, the Tobias Schlottke: iPhone. Um,
Dr Daniel Hauschildt: Kind of, definitely, um, it's, we, we build it all natively. We have, um, a common layer written in C in there, which abstracts a bit of things. So we don't have to really duplicate our business logic, but we have to integrate with all the platform specific details. And especially the UI layer, we decided, and we still believe in that, should be the native UI layer of the system.
Dr Daniel Hauschildt: So, like, for example, the DOM or, like, SwiftUI or Compose, Jetpack Compose, things like that. And when it comes to devices, exactly. It's sometimes like that, that we get bug reports from a phone I've never seen in my life, and sometimes we can't even buy it. I mean, there are phones in the world that you, it's hard to get, Tobias Schlottke: so Tobias Schlottke: how many phones do you have in your Tobias Schlottke: office?
Dr Daniel Hauschildt: It's really good questions. We have something like a distributed Dr Daniel Hauschildt: phone testing system. Every developer has at least one or two, which is in the platform. And we have some testers, which we got some, or the worst, the bad phones, let's say, because every time you test it on iPhone 14 or whatever, it works. But if you're using iPhone 8, it could be bad.
Dr Daniel Hauschildt: And the same is for Android, right? There are the Google or Samsung top notch devices. They probably work and they are fast, but there are so many in between bad devices. So we try to figure out always like, okay, how do we get the best test, um, test approach? But really, to be honest, especially in the Android world, there's so many different device to ship set, configurations to camera, et cetera, that it's It's more like we try to be, do as, be as good as we can.
Dr Daniel Hauschildt: And unfortunately, sometimes we rely on back reports from our customers, right? And then they, then we go and fix the Dr Daniel Hauschildt: specific phone. Fortunately, it's not Modularise the SDK --
Tobias Schlottke: Okay. And how do you, um, modularize, um, your, your SDKs? I mean, I think you have to really ensure that components are reusable, extendable, and don't introduce unnecessarily dependencies. And then you also have to maintain compatibility with, uh, like certain OS versions, et cetera. It's, it sounds super Tobias Schlottke: complex if you really think it through.
Dr Daniel Hauschildt: Yes. , it is complex. Um, I mean. So, so first of all, we always try to support, like, like everybody, we, every year we check which devices we support. For example, on iOS, we support the last, I think, three generations. And then the next year we see what we can throw out of the code, which is from the, let's say, an earlier generation.
Dr Daniel Hauschildt: So we have this, all this, uh, yeah, checking this. Um, yeah, how do we do it? So it's a really tough question, to be honest, I have to really think through it. So. We have this common layer, which is just business logic that doesn't need much modernization because basically that doesn't change too much, but the integrations with the cameras and all of these things, the device support, um, for sure for each, uh, for Android, there's a difference, there's just interfaces in our business logic and we implement those interfaces.
Dr Daniel Hauschildt: And we try even to do as much as we can in our business logic and really go low level as an example. Um, on iOS there's a framework which does video seeking and the decoding of everything and also the containers like MP4, MOV, et cetera. And we could use them from iOS, but that wouldn't be the same experience than on Android because they have a different parser, et cetera.
Dr Daniel Hauschildt: So we implement, you know, And then we implement the moth, uh, on the container parsing in our core C thing and just implement the connection to the codex itself, like H. 264 decoder, encoder from the platform to leverage basically the hardware acceleration, et cetera. Tobias Schlottke: Okay. Tobias Schlottke: Okay. Uh, which answers part of my question, but I can, yeah, I can imagine that it's super complex. Um,
Dr Daniel Hauschildt: Yeah. I mean, our, our main components are basically, we have this layer of core business technology, uh, business logic, which is one big component, which shares everything, which belongs to editing. And, and everything is like interfaces for the UI. We have a lot of UI APIs. So we abstracting this all away and putting the UIs on top.
Dr Daniel Hauschildt: So these are all itself, its own modules maintained by their own team. And also we have on the other side, the platform layer, we call it, which basically then per team has things like all this codecs, et cetera, per Android, per iOS, et cetera. And it gets even more complex because we also support things like Flutter, React native, which is. Dr Daniel Hauschildt: Again, also our story for itself. This is all Tobias Schlottke: and, Versioning and breaking changes --
Tobias Schlottke: and how do you then handle like breaking changes? I mean, that must be also a mess. Dr Daniel Hauschildt: Mhm. You mean, what kind of Tobias Schlottke: Well, if you are breaking functionality that was there before and you release a new version, like, Dr Daniel Hauschildt: Yes, we try to Dr Daniel Hauschildt: not do that too often Dr Daniel Hauschildt: because Tobias Schlottke: Yeah, I can imagine.
Dr Daniel Hauschildt: because also we have the, yes, so we still get away with just having the latest version maintained and nothing like LTS support or something. We have something, we have some, um, two product lines, you have to know, we have the, what we started with, what is called photo editor SDK and video editor SDK.
Dr Daniel Hauschildt: Which became like in a LTS mode, like three years ago. It's basically, we don't break anything. We, but we also don't add much, but we fix up platform things when new iOS versions come out and things like that. And with our newest SDK, which is basically the, which does much more things and also including the old functionality, we add new features.
Dr Daniel Hauschildt: And, but we still try not to break too many things at once. So it's like either we deprecate first for a long time and long time means probably longer than a year. And, um, then see what happens, right? It's a Optimising intensive Computing Needs --
Tobias Schlottke: And then image editing is like super, um, compute intensive. Um, like, do you have like, I don't know, the biggest C nerds that can optimize to the bone of each device? Um, and how do you do, or how do you do that otherwise? And what, what are the bottlenecks that you're, you're facing? Um, like, especially working on mobile devices that I, I, how do you overcome them?
Dr Daniel Hauschildt: Yeah. So. Obviously we have a lot of C people, but I wouldn't say they are the performance optimization, their work is not performed every day. Also, the good thing is that for graphics editing and video editing, if you leverage the hardware decoders and, um, let's say a modern GPU, which is almost in every phone these days, you can, you can do these things very well.
Dr Daniel Hauschildt: Our performance is, um, more suffering in terms of algorithms. You have to imagine we have not, we are not editing mostly with one image, but whole scenes like an InDesign. You have a whole document with multiple text layoutings. With multiple images, multiple decoders, and then the complexity comes more into clever caching and all these things, and then it becomes typical, yeah, really, we do performance, um, there are these performance monitoring tools in every, every toolset, right, on Xcode, etc.,
Dr Daniel Hauschildt: and you look where are the bottlenecks, and then either you have to really restructure the, the algorithm, um, like, or sometimes even exchanging some libraries Tobias Schlottke: Uh, uh. Dr Daniel Hauschildt: that. Dr Daniel Hauschildt: It is all the time, Tobias Schlottke: Okay, cool. Um, crazy. sounds like.
Dr Daniel Hauschildt: Yeah, it's a, it's a, it's a lot of work. And sometimes, um, the hardest part for us is that scenes can theoretically become arbitrary big and there's Dr Daniel Hauschildt: always a limit. So it's always like a best effort because it's never enough. So, because we go from image editing to photo books to, um, like this year books, you might know from our school or especially in the US, it's far bigger, right?
Dr Daniel Hauschildt: There's a hundred pages with images and text. Yeah, well, there's always a limit, but we realized with clever caching and things like what is in view and all these things, you can optimize a lot. I feel sometimes like working on Dr Daniel Hauschildt: a game, to be honest, because it feels like it. Like, you know, there's a world and you have to figure out what's visible and, uh, performance optimized that it runs on devices.
Dr Daniel Hauschildt: Maybe not only the best devices, but even there, it's really hard for us to determine what is the average device, because we'll always have some customer which comes up and says, Hey, three of my users have reported it doesn't work well on their Chromebook X Epsilon. And then you have to make a decision, right? Dr Daniel Hauschildt: With the Tobias Schlottke: And is it then that
Tobias Schlottke: you're purely focused on mobile devices or, I don't know. Do you Also, did you also realize, hey, on this Chinese car, um, there's also our image editor embedded because, uh, people needed to be able to edit their photos or, Dr Daniel Hauschildt: uh, honestly, mostly not. Sometimes it's tablet devices and I realized also, so we have a few customers, which. Do this in store tablets where you can, well, I don't know, do a simple designs like if a kid's t shirt and then you can
Dr Daniel Hauschildt: put a Mickey Mouse on it and the name on it. But this is still a tablet and that's mostly either Android or a web browser running Tobias Schlottke: Okay. Dr Daniel Hauschildt: right? Dr Daniel Hauschildt: So, so it's not like, let's say, Tesla OS optimizations or Tobias Schlottke: I mean, they also Tobias Schlottke: run Android, so, um, should, should be possible, Tobias Schlottke: but, um, okay.
Tobias Schlottke: Um, and, and, and Tobias Schlottke: then Cross-Platform Frameworks: Flutter, React etc. -- Tobias Schlottke: when it comes to like new, or those, those clad, uh, those cross platform frameworks such as like Flutter, React Native, or others, um, do you support that as well? Like, how do you, how do you integrate that in your strategy?
Dr Daniel Hauschildt: Yeah. Um, we, we currently have flatter and React Native support. Obviously there are lots tinier things, more we don't support like native script or some variants of that. But mostly it's like we have this, the good thing is we realize how markets work quickly with our inbound, what we get as requests, right? So we have already.
Dr Daniel Hauschildt: All the native versions, we always start with the native versions because of performance. And then when we go to, let's say, for example, Flutter, we first just wrap it into the Flutter environment. We don't rewrite everything in, let's say, Dart, but try to, as best effort, just Do a thin wrapper at first to help people Dr Daniel Hauschildt: integrate it quicker.
Dr Daniel Hauschildt: But then, and we have a lot of APIs, we don't convert all APIs at first to the Dart version of it. So then you still have to use, let's say, I don't know, on Android, Java or Kotlin or whatever, to, to, let's say, customize the, all Dr Daniel Hauschildt: the Tobias Schlottke: Mm hmm. Mm hmm. Dr Daniel Hauschildt: And then we always, it's a market research thing, right? The more customers you get, the more requests it's all day today, right?
Dr Daniel Hauschildt: Business development, you look at it. Uh, there are so many people using React Native Flutter these days. And then we hear the feedback. Some say, Oh, we don't even can code Kotlin. And then we think about it. And sometimes we start adding the most important APIs, but that's the day to Tobias Schlottke: And then you have to write documentation, have to publish content on
Tobias Schlottke: it, have to like do all of that so that it's actually also being, being used and adopted, right? Dr Daniel Hauschildt: Yes. Especially documentation, when you launch Flutter, you
Dr Daniel Hauschildt: should have Flutter documentation. Um, like I said, the good thing is that the documentation scales with the APIs that have to be converted. So the getting started and the examples for sure. And then in the beginning, you always can refer to the native, um, yeah, the native APIs and then the docu is the same.
Dr Daniel Hauschildt: But yes, if you really want to go strong in a certain wrapper, you have to treat it as their own platform sets. Point. Yeah. And you can only try to reuse technology in the background is c plus plus or some Documentation Tools -- Tobias Schlottke: And do you have like one secret tool that you use for documenting? Like one, one, one thing that really helps you a lot, um, which you publish all your docs in or?
Dr Daniel Hauschildt: we, we tried so many things and to be honest, we are currently in the process of rev wrapping all our documentation, like end time and making it better. But now after all, we add up again having our own Astro markdown thing and. Doing everything in there and statically compiling and publishing it. No magic bullet, unfortunately, I'm Dr Daniel Hauschildt: still searching for it.
Tobias Schlottke: Seems to be like an, uh, an ever going quest, right? Um, what about AI Tobias Schlottke: and, and your AI Integration and Future Directions -- Tobias Schlottke: adoption of AI? Like, um, I can, I can imagine that like many clients requested these days, like, I don't know, background removal, stuff like that. Um, is that something you do as well?
Dr Daniel Hauschildt: Uh, yeah, partially. So some, so we have, at some point we realized we cannot do everything and integrate every AI on the planet, especially inside of this gen AI, right? And then there's no avatar generation. There's audio generation. It goes pretty far and LLMs for sure. And so, um, a few, few months ago, a year ago, I don't know, we started integrating.
Dr Daniel Hauschildt: We have something like a plugin system, basically. So you can hook into all our functionality and integrate whatever you want there. We have some examples. So we ship an integration with some generative AI. We also have our own background removal, for example, which is also built on the plugin system. But normally we work together with customers and we also, as one can imagine, have a few which come from the image generation and then need an editor.
Dr Daniel Hauschildt: But they can basically hook it completely into our ecosystem. And then it feels like it was always be part of Dr Daniel Hauschildt: our system. Tobias Schlottke: But, Dr Daniel Hauschildt: You can go so far and even build your own panels and toolbars and buttons inside our Tobias Schlottke: okay. Okay. So a bit like a lightweight Photoshop, I guess. Dr Daniel Hauschildt: Lightweight Photoshop, yeah. Easy Tobias Schlottke: Easy to use
Dr Daniel Hauschildt: I would say. That's maybe Dr Daniel Hauschildt: easy to Client Side Functionality --
Tobias Schlottke: Okay. Okay. Um, and, um, I guess then also you have some functionality which even runs on servers, right? Like that, uh, I don't know, uh, uh, evaluating models locally on a device might be complicated or not, not performing enough, like then you also have a server part, so Tobias Schlottke: like your business is at the end complex, more complex than a typical SaaS business, I would say. Tobias Schlottke: Yeah.
Dr Daniel Hauschildt: That's simple answers, I guess, yes, it's more complicated. Um, for sure. We always try to do all, everything client side first, for example, even the background removal, we made it work client side completely with neural networks, et cetera, um, which also saves our customers a lot of money because normally you pay per, per remove or some credit system or whatever.
Dr Daniel Hauschildt: Um, we ourselves currently don't have any server side things, unless for demonstrators. But we help customers. We also have a server version of our own SDK, you have to know, and help them set it up in the infrastructure and things like that. So we still, um, shy away a bit from maintaining our servers in scale and doing all the DevOps things you probably know very well.
Dr Daniel Hauschildt: Um, for now, AI somehow pushes us a bit more into this direction. So it's a constant negotiation inside the company, more strategic question. Should we open this Pandora's box? That's how I say, because, um, first of all, our people are mostly not experienced in that at the moment, which I'm sure all are clever, all are good, can learn it, but we are more like this client side, on device, libraries, usage type of company, right?
Dr Daniel Hauschildt: Um, but yeah, the first thing I can tell you what we will provide soon is like, uh, something like a proxy to proxy the communication to all the AI stuff. But we won't run the models Dr Daniel Hauschildt: ourselves. Future plans for IMG.LY? --
Tobias Schlottke: Okay. Okay. Interesting. Um, from my perspective, it's, um, like super, super hard to see what the, what, what the, what the end game here will be. Right. Like, do you think, um, At a certain point, you, you, you, you reach a limit when you, when you, when you just say, Hey, this far and no, no further. And, um, I mean, this, like we built an image editor and now, I don't know, we're reinventing, uh, everything, which is, uh, in photo editing, like where, where is it like from your perspective, what's your end game?
Dr Daniel Hauschildt: Yeah. So, so you have to know our vision was always, so we came from something else. We, we always had, this is simple story. So it was always like, do you know the problem of design handovers? So somebody built something in Photoshop, then maybe converts it to a format, which. a marketer can use. Um, let's make it simple, where they converted to Keynote.
Dr Daniel Hauschildt: It was, at least back then, it got a lot better with Canvas these days, to be honest. But, um, this was our goal. And so our whole SDK, there is a other side to it, which we are developing. What we call studio is basically a template creation process where you can basically build designs and ship them to our SDKs.
Dr Daniel Hauschildt: So you can use. These prebuilt designs in any workflow. That's our vision. So mostly customers that we have had DAMs, CMSs where they want, they don't want to leave the creation process for the assets. You know, and so we embed the whole editing experience directly in the workflow. That's our goal for all of design, basically.
Dr Daniel Hauschildt: So that's why we went from photo to video to compositions like books, videos, complex scenes, etc. So, and we have more and more customers these days, especially the last two years. And now with AI, it's creative automation also becomes more interesting. Additionally, um, that basically extend the current offering, either they come from the publishing side or they come from the CMS side and they go and want to integrate the generation of designs, the update of designs, the variation creation of designs, all in their platform without leaving it to a third party and also have all these things.
Dr Daniel Hauschildt: And that's one of the main. Yeah, it's one of the main target groups or target markets we go into Tobias Schlottke: So mass customization, uh, of, Dr Daniel Hauschildt: Yeah, it's mass variations, multichannel publishing, especially also all these problems like you build one design, one different backgrounds, one different messaging, different languages, different sizes, like multi, like video output for wheels or static output.
Dr Daniel Hauschildt: You name it, right? So there's a lot of output material you need to generate these days, or you want to. And, um, yeah, that's honestly all in one editing experience and can even be configured to, if you want to focus on one specific thing. Tobias Schlottke: okay. And, and, and, and that like ultimately sounds as if you compete then with really big companies.
Dr Daniel Hauschildt: I think indirectly, right? Because most of, so I, for sure, if you name Canva or something, or Adobe, let's say they are, they are not so much in this SDK deep integration market, at least not yet, and I haven't seen any move to do that. They are still, they still want you to join their platform. Right? So you always have something, there was something which was called Canva button where you could add your Canva account to a third party.
Dr Daniel Hauschildt: And then in CMS you have a redirection to Canva, use your stuff and go back. But, uh, our approach is different. So we always, we never, we want it to be part of the application of yourself or someone else. Right? So much tighter integration, much deeper integration. But yes, indirectly we compete, but I would say like Adobe, for example, focuses much more on the designers itself. --
Tobias Schlottke: Um, coming coming back to your, your, your team, um, you said 50 people? Um, and above 5 million, uh, which is nice. Um, how's your, like, how many developers do you have? Is it all developers or?
Dr Daniel Hauschildt: Uh, no, it's not all developers, uh, but a lot for sure. Um, we have, I would say, I would have to count, but it's like, 35 developers probably, something like that, 30 to 35. Uh, also since we are doing a lot of UIs, designers, we have UI designers, UX designers, um, actually I think four, no, I know four of them. We have the sales team in house, we have the marketing team in house, but I think comparingly to other companies, for example, marketing is two persons currently, and sales is three to four, and we are mostly doing inbound sales.
Dr Daniel Hauschildt: At the moment, so there's even a lot of untapped space for us to, to go broader, but for now, for our current growth, for how we grew and how we work and where we come from as engineers, it was easier and more, more clear to grow from the inbound, um, and SEO, Tobias Schlottke: Yeah. I would, I
Tobias Schlottke: would say that, uh, this is really like a PLG product, right? Like you, um, basically look up documentation, you basically search for a solution and then you somehow end up there. What is the ICP of an SDK? -- Tobias Schlottke: Um, I think like really defining your, um, your ICP and then, I don't know, doing, doing code Tobias Schlottke: outreach, uh, might, might feel a bit odd, right?
Dr Daniel Hauschildt: Actually, this ICP topic has been a long ongoing discussion in the company, how to define it properly and to do that. It's, it's really hard, right? There's even this, this, um, discussion I'm having, what the ICP can be of an SDK. So normally I would go into a certain industry, just double down, make your product perfect for this certain scenario, right?
Dr Daniel Hauschildt: And then if that works and you scale there, maybe expand. But in our case, I mean, we are an SDK, right? We can build. And whatever you want to build eventually. And now the problem. Starts, or it's good and bad at the same time. It's bad for product management. It's good because you get a lot of inbound information what's out there and you get the info what people are building so I can I could basically create a trend document every year like what people want to build and what's trending right now Like GAN AI for sure is the thing right now, even in design and video generation, obviously I mean, that's that's pretty obvious, but there are also other movements Which we always see then, right?
Dr Daniel Hauschildt: Because people are asking for it. And then we can decide if we adopt into it, if we spend resources on it, if feature development goes in a new direction. But I still feel product development and management and decision making, unfortunately very hard due to the unclear or un narrow target group definition. Marketing to developers --
Tobias Schlottke: Understood. Um, do you have, um, I mean, we mentioned documentation early, um, maybe a few more tips for people that, that are building an SDK or want to be better in building SDKs, um, maybe not explicitly towards like dev rels and building communities, et cetera, but also covering that. Dr Daniel Hauschildt: Yeah. So actually we don't do deferral and building Tobias Schlottke: Yeah. Dr Daniel Hauschildt: yet, to be honest. We are not there. That's an open untapped thing
Tobias Schlottke: Yeah. Yeah. Dr Daniel Hauschildt: about. Um, when it comes to libraries, so, so maybe people have to know how we started, right? So we, we started in creating a really small photo editing experience inside an agency for a certain specific use case, and then put it out on GitHub for open source. Dr Daniel Hauschildt: That's how we started. And we
Dr Daniel Hauschildt: got basically our first traction from this. And then. Went in there and Developer Experience in Function CAlls -- Dr Daniel Hauschildt: uh, went forward and got more customers and so forth and so forth. And when it comes to developer experience, my personal experience is it's, it's the same as thinking about UX, right? So you have to think, how can people understand your APIs instinctively or whatever you want to call it? tobias-_2_12-06-2024_170954: of GitHub, um
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Okay. Okay.
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Yeah. Uh, so, so like I mentioned, so we started on GitHub and we pushed out a simple library for photo editing, very simple and, uh, had only a few entry points, not much to configure and all these things. There's, um, I think there's, uh, let's, let's go from a different perspective. If you think about libraries that everybody will know, like OpenSSL or things like that, you think about this, All this unitary functions to compose your own stuff, et cetera, but it's actually, I think these days also developers want simplest version, one function call that does most of the heavy lifting with a good result.
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: So,
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: and this configurability and details are only later steps. I always say going to the rabbit hole, once you master that, you go deeper. But if you present. Let's say just a library that is typically generated. Oh, I, I generated myself a TypeScript documentation reference. And you see this 10 pages of function calls. That's not how you should present it, right? You should have that one purpose driven entry point. I give you an example. We recently released background removal as an open source library a year ago. And it just had one entry point. Remove background
tobias-_2_12-06-2024_170954: Remove background, ja. dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: image out. You know what I mean? dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: and that's simple and understandable. dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: And later you add configurations for all the edge cases, if you want. tobias-_2_12-06-2024_170954: produce PDF, produce PDF, produce PDF.
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Yes. Unfortunately we can, but a different story. tobias-_2_12-06-2024_170954: Okay. Um, um, any other tips? Okay. Developer Experience and UI --
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Like I said, I still think that's, Oh, it's even in developers, it's all about usefulness and the job to be done. I really like this approach of understanding what does the user want to do. And if it's a developer, they also want to do something. They don't want a library. You know what I mean? It's all about getting away from that.
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Oh, I'm coding or building or shipping some, some stuff. It's more about the product experience in the end of all. UX digs and it's understandability is very important. We learned when we got, we still have this. So, yeah, that's it for this day to day thing where we add more functionality, understanding what's possible, it gets harder and harder, and we always, we think that, right, and always work on, okay, how can we make the specific use case very obvious, right?
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: And what's even, and from the develop, from the APIs and from the UX. Yeah. tobias-_2_12-06-2024_170954: Um, thank you. Um, so, uh, I, I hope that is, that is helpful for, um, uh, like many of the SDK builders out there. Message to Younger Self --
tobias-_2_12-06-2024_170954: Um, I, I slowly want to, want to come to the end. Um, and, um, actually have my, um, I have a, have a secret question in here prepared for you. Um, where I had to reach out to Eray, uh, your co founder. Um, and he told me about a little Easter egg in your early Objective C version, um, of, of your image API.
tobias-_2_12-06-2024_170954: Um, Which is the time machine feature, which allows us to travel back in time if we, uh, just, um, like use, use a certain feature, use a, use a certain feature flag, um, and, uh, we now have the chance to like, just imagine, um, traveling back in time to the year 2017, when you just started Imagely, um, and, um, whisper something like a, like an advice into your younger self's ears. tobias-_2_12-06-2024_170954: What would you say?
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Honestly, I would say you don't know what you're getting into. It's so much more work than you think. Yeah, actually, really, I'm honest. It's, uh, it's, it's much more complicated than I thought when I started, but I still believe that a bit of naivety is always good to start a company and, uh, I would still do it again. tobias-_2_12-06-2024_170954: So if there was hair on your head, like it would all be gray or what?
dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Yep, I think so, yes, but I'm good, don't get me wrong, I'm really good, I like what I do. Um, but like I said, there's so many details to developing a good SDK besides what you think in, I write the code. So, and you will have to dig deep into that, yeah. We
tobias-_2_12-06-2024_170954: um, really like looking forward to see what, what happens with your company and what the, like the big game plan is at the end and where you end up. And, uh, I don't know which private equity company will at a certain point, uh, buy you for a billion dollars or something. So dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: just tell you that mid of the year, next year, we will definitely launch something, let's see.
tobias-_2_12-06-2024_170954: definitely launch something that is work we have done the last years is being consolidated tobias-_2_12-06-2024_170954: Okay. Okay. Looking forward to see what you're definitely launching. Thanks a lot, Daniel. Uh, and yeah, have a great Christmas time. Hope to see you soon. dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: you too. Thank you. tobias-_2_12-06-2024_170954: Bye. dr--daniel-hauschildt--he-him-_2_12-06-2024_170954: Bye.