Lee Kah Seng profile image

Lee Kah Seng

🇲🇾 Creator of SwiftSenpai • Senior iOS Developer • Swift Lover • Music Addict • Anime Fan • Part-time Backpacker

Twitter SwiftSenpai

How and when did you get into programming? And into iOS?

Started my 1st programming job as .NET developer back in 2008 (now you know I am not young 😅). In year 2010, iPhone & App Store are getting famous in Malaysia, so I started learning iOS development because I would like to publish my own app on App Store. During that time iOS is still called 'iPhone OS' because the iPad is still an Apple secret project. One year later, I manage to get an iOS developer job in one of the local companies in Malaysia and have been working on the iOS platform since then.

Nice, I did my fair share of .NET development as well 😃 So I guess you are pretty well acquainted with ObjC, when did you start with Swift?

I didn't jump into Swift when it first launches, was still using Objective C for production app back then, but I do slowly picking it up during my free time. I got my first freelance Swift project in 2017, and my first task is to migrate the entire project from Swift 2 to Swift 3, I am sure you can imagine the nightmare I've gone through during the migration. 🙈

I fortunately started with Swift 3 but tried once migrating example project from Swift 2 and it was crazy how much has changed. Do you remember what was challenging to grasp when learning iOS/Swift in the beginning?

Coming from a C# background, the most challenging thing for me is the lack of dot syntax in ObjC, the square bracket syntax of ObjC really looks like an alien language at first. Another challenge that I can think of is the fact that ObjC does not have garbage collector, so it took me quite some time to wrap my head around the concept behind it. For Swift, I would say is Optional, if you do not understand Optional, you basically can’t do anything with Swift.

Whats the iOS development like in Malaysia? Is iOS popular enough so that there are a lot of opportunities for developers?

Yup, iOS development is quite common in Malaysia, a lot of startup European companies prefer to set up their R&D team in Malaysia due to the low currency rate here. In fact, I have worked for a UK company a few years back. With all that being said, developers with the highest demand in Malaysia are still web and backend developers. How about you? Is it easy to get an iOS development job in your country?

I have checked the marketshare and in Czech Republic it is around 20% iOS which is similar to Malaysia. I think the demand here is pretty good. However Apple products are comparatively expensive around here which raises the barrier to entry.

How/why did you decide to start your blog about iOS? Think you started in 2019, right?

You are partially right, I set up SwiftSenpai in 2019, but I started writing on Medium way back in June 2017. At that time I was just writing for fun and don't even know whether people will read it or not. If you are interested, here's my 1st article.

In terms of why I started SwiftSenpai, it is mainly for building up my portfolio as an iOS developer. I am currently full-time freelancing, thus blogging is a good way to showcase my skill sets to the public. At the same time, it is also a good way to document what I have learned and share it with the Swift community. Lastly, I would say is for the coffee money, if you know what I mean. 😉

How do you pick topics to write about on your blog?

I don't have much strategy on choosing what topics to cover. I usually write about new things that I learned in my daily work. As you can see, I write about diffable data source quite a lot, this is because recently I have been helping my client to build a very complicated layout using collection view.

Got it! A lot of my posts are about the stuff I just built. You have spent around a decade with UIKit. I am curious if you are also working with SwiftUI and if so, in what way?

To be honest, I felt a bit demotivated at first because I have spent so much time learning & understanding UIKit, and now I will have to relearn everything again. But after seeing it in action and hearing all the good stuff about it, I am really looking forward to building an app using SwiftUI. Right now I am following the "100 Days of SwiftUI" series by Paul Hudson and slowly picking up SwiftUI. So far I am really liking it, it really makes creating UI much easier and reduced a lot of UIKit boilerplate code. What's your thought on SwiftUI? Have you been using it for production?

I think I did around 60% of the 100 Days of SwiftUI but then stopped. I like the idea more than the execution as of right now. Waiting to see what iOS 15 brings..

Btw do you have a formal education (meaning computer science degree or similar)?

I have a bachelor's degree in Telecommunication Engineering, which got nothing to do with software development. 😅 Most of my knowledge is mainly from work or self-learning.

Now for a different question.. You have a magic wand... and can change one thing about iOS development. What?

There are so many things that I want to change, but the first thing I want to change is the size of Xcode! I will make it as small as visual studio code, super lightweight and fast! 🤩

Now I kind of wish the magic wand were real... Moving away from work/code.. What do you do to relax?

It depends, my longest record is 1 month where I traveled alone in New Zealand. During that time, I was working for a client remotely while traveling, I would consider that as some sort of working holiday. It is a very great experience.

Photo from New Zealand Lee took while backpacking

Here's one of my favorite photos. This photo is taken using iPhone 6 at Ninety Mile Beach, New Zealand.

That is really cool. I expected that it will be in days. Thanks so much for taking the time! Do you want to give someone or something a shoutout?

I would like to give a shoutout to all my readers especially those who bought me a coffee. Your support is what motivates me to keep blogging. 🙏🏻

Other chats

All chats