I'm Aldy Syahdeini. I'm Artificial Intelligence (AI) engineer for BukaLapak
I have just started work here 3 months ago, but then asked to speak here, so let's see
I'm just going to share my experience these past three months work at Bukalapak
As our theme 'Kickstart You Carrier', I'd like to share some pointer for you who'd like to start a carrier in Data Field
You see AI is quite a hype nowadays
We see it on news and papers, all about AI
I hope with this hype, we can be one of the leaders in AI field
So, what is AI engineer?
First, one thing need to be clarified
Why Bukalapak use the term AI Engineer
While others use machinery engineer or data scientist
I thought ìisnít it too sophisticated to use the term AI engineer?
Then it come to me, well itís just a name and name is like a hope or an aspiration
Us, by using that term AI engineer; we are going to go there by what weíre doing now
So, it's just a name. it doesn't really matter
Then, what exactly are we doing as AI engineer?
Here in Bukalapak, me and the team
We basically make a model, or an algorithm based on our data
Models that hopefully can help processing in Bukalapak
Processes such as
Business process, marketing process, logistic process and others
Using statistical and deep learning approach
Hereís a little story of AI at Bukalapak
Recently, September 2017
We are emerging from 1 division called core-Data
Started from data engineer, we're doing bunch of stuffs
Then on November 2017
Ohh.. before we have AI guild
Bukalapak have guilds for people who wants to learn of something, we can study together there
But in November 2017, we start of BLAIR
In short for Bukalapak AI Research
At first, we start as sharing community
Sharing some papers & information about cutting edge technologies in AI Engineering 34 00:03:18 --> 00:03:24 Then in 2018 we started doing collaboration with universities in Indonesia
By collaboration, we mean that we gave data to students whose working on their final assignment
We also in touch with the lecturer (from the universities)
In case we are facing some problems (with the data)
Next step, we going to need personal in Autonomous and Reinforcement Learning
And our hope from BLAIR is to publish a paper in the future
Are you following so far?
Do you get confused with AI, data scientist, data engineer?
What's the difference?
Well, in my opinion, as the one who work at Bukalapak
AI engineer is the intersect between data engineer and data scientist
So, we need to be good in software engineering skill
Knowledge in distributed system
And ?? learning in data scientist
Here at Bukalapak, data scientist focusses on driving business decisions
Give some insights, or data analyzing if a problem occur
While AI are more into developing intelligence system
And data engineers are into building installable infrastructure
While AI working as a team, data scientists inserting themselves into other team or subdivision
AI also do the research in machine learning, deep learning and personal learning
Data scientist also works on machine learning, but the loads of works done more by AI
Here I try to put into graphics myself. Hope you can understand
As you can see, data scientist got request from stake holder
Then data scientist looks for some insight from data or model then report back to stake older
AI also got request from stake holders, plural not singular
And we also do a meeting to see if there any problems we can solve (at Bukalapak)
Because sometimes the stake holder doesnít have the idea that certain problems can be solved by AI
So the AI team need to be more proactive in problem solving
As you can see, thereís a different in technologies (between AI and data scientist)
Well, the diagram actually incomplete
Because I made it based only on my knowledge about data scientist
Then we also have different results. AI give a micro service as the result of the problem solving
Which then use by the stake holders
It also applicable to other stake holders with some editing, adding features resulting in new version of the micro service
Then data scientist results usually more into data transformation
(in solving a problem) We often asked data scientist first whether they already got a data (on the problem)
Here is my own personal experience
I was a back-end engineer at Bukalapak
I worked as back-end engineer for six moths
Then I stop (working) to get my masterís degree
And back to Bukalapak on November as AI engineer
Then there's a question of what the different of back-end engineer and AI engineer
So I'll share a little with you, based on my experience
Back-end engineers are mostly making good logics/semantics to be used by other engineers
A system reviews
While AI engineers, we are more into looking for a right algorithm or model for the problem or data
AI engineers (work) more in mathematics algorithm
Also add in knowledge in distributed programming
AI engineers can also utilize published paper, in searching usable approach of solving (similar) problem
The time frame also different
Back-end engineers usually using scrum, itís about two weeks
AI engineers also using scrum, but weíre not expected to published result after two weeks
We have more time, it can get to a month or event three months.
Now, what skills needed to be an AI engineer?
First, a strong coding skill
Because weíre making a micro service
At least, you experienced in making API (Application Program Interface), then you can advance into AI engineering
Familiar with algebra and probability, good statistic
Itís the prerequisite for machine learning and deep learning courses
If you join the online course, you see there're frequency sheets
Here's example repository, you can see, there information of what needed for joining certain course
Here's also information of where to join the course, so can just use the information
We also need academic reading (skills), you need to able to read a paper
And you also need to be experienced in the project itself
Now, among all the applicants of engineer position, what make you stand out?
In my experience, you need to have knowledge and experience in deep learning
Here's a little problem
For fresh graduate applying for deep learning project
But the at the interview, they don't quite understand
About the architecture, data transformation, they just follow the tutorial
Then say: Ok I know this
But when facing an over-fitting model, they don't what to do with it
Or what to do with vanishing gradient
We don't want that, don't be that person
You need to explore by yourself, not just following the tutorial
For distributed computing, we use (Apache) Sparks at Bukalapak
Well at least, you have experience in distributed computing
It'll be even better, if you had done assignment on deep learning
So, it's clear that you're experience on the subject
More so if you have published a paper (on the subject), you'll get in right away.
Then, how do I get to learn those knowledges?
So, there are two methods, online course and higher education
Online course, for me it's the future of learning method
It's what everybody need to be doing (of learning stuffs)
Because you don't need anything (much), you can just sit in front of your laptop then learn the study by yourself
My suggestion, you take the Andrew Ng: Machine Learning and Geoffrey Hinton: Deep learning; it's quite good
Coursera and udacity, youíve already know all that
But itís quite challenging, this online course. Why?
But itís quite challenging, this online course. Why?
If you among the people who finished the course, thatís great.
I read somewhere thereíre only 4% of people who joined the course who actually finished it.
You can also join Data Camp
In fact, one of the start-up company in Indonesia
They take their data scientists from Data Camp
Data Camp only take one to two weeks, so itís very good
So, after learning from these online courses, what's next?
You look for a mentor, a person that have good understanding of the field
For you to ask whatís next to learn or give you some exercise in problem solving
You can also check on medium (medium.com) of the good courses you can take, you can just follow it.
About, higher education. Because I also take higher education, my opinion would be bias.
The necessity of it, is the frequently asked question among the under graduates.
In my opinion, higher education give us the environment of people who focus on the field
You'd be given one to two years to focus on learning the field
While if you doing online course, you can be distracted by anything. For undergrads, I'm suggesting to take internship
So, the higher education environment will give you more focus in developing your interest
Other method, you can learn directly from the researcher, which is very good actually
Because they have the full understanding of the actual problems
Then you can learn about the research methodologists
which is also needed in AI Engineer fields
Also, my suggestion, when doing online course, donít just watched
Youíll get confused dealing with problems if you just watched
If you join github, they usually included jupyter notebook within their repository
You can just do the notebook or re-watch the video when you get confused
Then usually, a homepage works from the online courses
You do the home-works, all of it, then again you can always re-watch the video when you get confused
It will give you real experience on the actual work
In Bukalapak, we have Machine Learning and AI Engineering internship if you interested How to update your knowledge?
For me, the answer is Twitter
I just followed some great accounts
Or maybe Instagram, but I prefer Twitter
Just, checkout the Twitter account on your spare time, because they usually very updated
While itís not usual, unless you already know what youíre looking for, you can open Arxiv
You can also subscribe on newsletter (i.e deep learning weekly)
So, you can get information about new published papers, methodology, and other stuffs weekly
For me, the best AI team is the one that come from various backgrounds
Because AI field is very broad
Don't be discouraged if you come from other backgrounds, AI actually needed it
We canít be just from CS background with CS point of view, itís not really good
Here are the team in Bukalapak
We have NLP, Vision, Recommendation, engineering (optimization)
We'll also need Autonomous System in the future
Now, let's get back on our objectives, the three steps
So here they are
You now know what AI Engineer do and the difference with other careers in data field
You know the skillset needed in AI Engineer
How to get it and update the knowledges
How to get it and update the knowledges
Or join the internship with Bukalapak
I guess thatís all. Thank you.
No comments:
Post a Comment