100 days at Doodle
Today was my 100th working day at Doodle. I started in May, but spent some days at the hospital and at home after an unhappy encounter with a scooter kid at the bowl in Genève which led to a broken collarbone. I have a tendency to notice anything that is not working, so don’t take what I write here the wrong way. I overall really really like working at my new job!
I’m a bit lazy to structure this nicely, so I’ll just drop a list of random thoughts about this tiny company with a great product and a huge audience:
- the working hours are similar to what I had at my previous software dev job. I have to show up at 9h15 latest in the morning, because we then have our daily standup meeting where each team member shares what he did the day before and what’s ahead. Other than that, you could in theory come and go as you want. I usually start between 8h and 8h30 and leave at 17h30–18h30
- there is a canteen, which simplifies the quest for a place to have lunch at, but is already getting boring and dull
- the team is awesome. We’re not that many, and I get along quite well with everyone. They’re all very helpful. I don’t get the feeling there is any knowledge retention or dumb power games going on, like I experienced at my previous job. I would have liked to get to know the Doodle founders Paul and Myke better, but I joined the company when they already left or were in the process of leaving
- on my third day on the job, I had an appointment at the dentist’s in Genève and I could work from home. On my third day! At my previous job, this would not have been possible. The dev environment setup and administrative hurdles would have taken at least a week. Maybe two. At Doodle, I was up and running at the end of my first day
- while working remotely is nice, actually being at the office still is nicer. Even if you can chat, video conf and email with your colleagues, being there makes it nicer. Not more efficient, just nicer
- one thing that’s a bit annoying is that the 3 devs that have been at Doodle longest work at 80% and have their day off at the same time. This leads to “reverse-engineering Friday”, which can be both fun and annoying
- I work on a brand new Retina MacBook Pro 15". This is a huge upgrade from a crappy Dell desktop running Windows 7
- Doodle has a device lab. Granted, it’s getting a bit outdated, but man, I would have dreamed of having this 3 years ago when I was building the SecuTix mobile app. Come to think of it, I had no wifi, so no access to the servers. Development hell… (of course, I ended up installing an “illegal” wifi because there really was no other way)
- Doodle has a quite typical Java backend and JavaScript frontend technology stacks. I was familiar with some things like Java (language basics, Jersey framework), HTML, CSS and JavaScript of course. I learned a bit about Bootstrap and RequireJS. I also learned how to query MongoDB and to tinker with Gradle (by extrapolating how I used to do things with Maven). Overall no huge new thing, and especially no new frontendy stuff, sadly
- we’re using a whole bunch of tools: invision to share and comment on UI designs; we have our virtual post-its in blossom; we keep our backlog and internal bug lists in Basecamp; we use Google for Work for calendar, email, documents; Google Analytics counts our Doodlers; we have a bunch of ads delivery systems and certification I don’t know much about; KISSmetrics helps us analyse user behavior on Doodle; we log JavaScript errors via Muscula; Sketch is used a bit for UI design too; IntelliJ is our IDE (I still hate IDEs); SourceTree helps us avoid having to use git from the command line; BrowserStack helps us test Doodle for those stupid people that are still on IE8; desk is our support ticket system. Phew! Quite a list! And I probably forgot some
- since I started, I discovered a lot of features from Doodle. You can limit the number of participants, do text (not date/time) polls, have polls where you’re not allowed to see who participates etc. Then there’s the paid service of Doodle, called Premium, where you can for example sync with your agenda. That’s actually a killer feature if you’re a busy person
- on the not-so-bright side, I have to say that I’m quite frustrated with legacy code and the unwillingness to change. This is however understandable to some extent because, after all, there are millions of Doodle users and you want to be careful with your changes
- I’m also disappointed by the lack of design coherence. I find the looks, navigation and UX overall really inconsistent. There are a desktop/tablet web version, 2 mobile web versions (soon to be 1), an Android app and an iOS app, all with different UI and UX
- what did I work on in these 100 days? Among others, a Google Calendar migration, a new wizard step (coming soon!), the team page, a new mobile app API, introduce Sass and Compass which seems to be a recurring theme, A/B testing for ads and the homepage
What will I do in the next 100 days? I don’t know exactly, but I’m definitely looking forward to our upcoming new iOS app!