 Hey guys, thank you all for coming today. Is it life now? Yep. Yep. Oh, okay It's something you've cut me off as my camera shy No, you don't have to do that Okay, so thank you all for coming today We have a few familiar faces from one of our students that we have some potential applicants are from the next batch of good camps We have So And so We are a tag and start off school so we offer full time For aspiring developers as well as digital competitors and Good at this. Okay. So now so today we're very privileged to have our three of the top most Yeah, okay, and I think we got further. Let's just you know I will go around you have a night. You can just go around to introduce yourself All of you, you know, probably will have Seen them. They're probably not very new faces in the tech community But let's hear. Let's hear more about the stories today And what do you have to say when it comes to? Yeah, all the software development journey Okay That's so Hello everyone, my name is so currently I'm working at Singapore power I joined the power of six months ago so this is a new I Have Then I will I also organize the As long as I was on the sea and My name is Ted, I'm a former high school teacher and currently a technical director at a local Rails agency called Tickerbox. I'm also involved in the local Ruby community, where I save the monthly VTAPs, the Rails tools VTAPs and Rails to-do conference next year. Hi, my name is Michael. I run the Singapore Ph.D. Museum. I've been running that for about the last 10 years. Two years ago, last year, I organized the first Ph.D. conference in Asia, which was attended by quite a lot of people from across Asia and the creator of Ph.D. Kingdom, Singapore, which is kind of pretty cool. Currently, I also run a website for engineers for SG, so today is a site where we create or we will go to record tech technology VTAPs in Singapore. I'm also working at Singapore Power, and I'm a driver in the office. Here we say I was working at Digital Labs, so that's me. Okay, thank you Michael. So all three of you actually run your own VTAPs and conferences, so I was called last few months ago, right, was actually organized by UU soon, and then you were, you know, you're also super busy. Like the last time I communicated with UU, you were in Taiwan for Ruby, Conf, and then PHP as well. Yeah, so I think you guys, you know, whenever you are in the community or budding, budding, you know, developers, you should totally enjoy all those videos and sessions to get more insights from them and talk to them, yeah, and to share more insights. Now, before, now, so this whole session, right, is actually broken up into several parts. Okay, so just now, you know, you have actually heard from them their introduction. Now we, this session is actually catered to our current batch of students as well, so some of the questions that they have raised and actually collated some of them will be pretty useful to you, especially some of you who will embark on your journey, you know, learning development, web development, and iOS development. So we will just go around, okay. First question, actually, is about fun learning. This section is always about us, about learning. So maybe, you know, can start with soup. Can you share with us on your software development learning journey? Yeah, so, I mean, it's quite an interesting story for many of people who are starting programming through this course or you're going to learn through camp. So, like, these days, I see kids like eight years old, three years old, learning programming with their apps on App Store, but I started pretty late. I started when I was, when I joined my engineering and graduation, so I was seven years old. So, but then for four years in the college, the languages that I learned, getting the permission of programming, but then the things that I had to apply for are very different than what I loved, what I loved in office or in my degree. So, a lot of what I learned is through quizzes, is by contributing to Oguza's community and then by speaking to many and many people within my organization and also in the organization. So, that kind of event, I mentioned, like, we are part of the middle group, we are part of the community. So, that kind of embracing to also come to these events, not only just, you know, you might not know everything, whatever is being said, but there are only people who will be able to help you, willing to speak to you and guide you, mentor you. And so, basically, these events and these people are going to really help you through your journey. So, yeah. Thanks, Sue. Now, I understand that from three of you, only Sue has more formal training in computer science in your point of degree, right? So, Ted, you actually self-taught your way through programming. Can you share with us on your own personal journey? Yes. So, my background is quite different. As I said, I learned from Chinese CS classes in my life so far. It actually started when I was really young. I was 12 years old. There was a Swedish proto community called SCAM that allowed you to use HTML and CSS and JavaScript to build your own profile page on the community. And this got me interested in it in the first place. I kept pursuing it as a pastime for the next 10 years or so, but I never really considered it as a career option. I remember when I finished high school, I considered different options for uni. And the thing I can remember is my criteria was at least nothing that has anything to do with computers. But then I was a high school teacher for one. I dropped out of uni. That's when my friends went out to me that, you know, you're already pretty good at programming, so you can go live abroad and be a programmer forever. Which took me out this weekend about six years ago. Now I've been in Singapore for three years. Hello, Michael. Well, I majored in history and political science. So, I did not study computer science, but studied history and economics, even though I studied economics, so I was always in the arts and social science kind of person. One of the interesting computers was the internet. So the back where I first got exposed to computers in 1996, I mean, 95 or 96. So basically, there was some of the internet and I was interested in it. My dad got me a computer. So, I did get online. So, I went online. I thought of myself getting an account with sideways. So, yeah, so I got online and the first thing I did was I found out how to download stuff. I was using Windows 95, went online, found like front page, how to download it off. So basically, I found a, before that, I actually read a book, a small book on the internet. And it was quite a lot. It was written by Singaporean ironically. So, how you can get online and all that stuff. So, from there, I read through it and it was interesting what is FTP, what is World Wide Web and HTML. It's like, oh, there's a very nice tool to create my whole page and everything. And they got me interested in web design. And then from web designing, I started working on other people's code. So, I looked at other people's code and I kind of challenged the technology because I know what technology can do. My natural curiosity just brought me deeper into it and I said, how does this form work? How do I log into this website? All that questions just drove me deeper and deeper into that rabbit hole. And then from there, just one thing left of another. I learned PHP, I learned Ruby, I learned Objective C, and now I'm learning code. So, yeah, it's a very interesting journey. So, you are a gig since young. So, why don't you choose history? I like history. I kind of like when I was in secondary school, I was like, okay, I need to pick a major. I was looking at my history results and my geography results. I was like, I think my history results are a little bit better. I'm more ace there. I think I'll go for history. Is there any relevance? I think it gives me a little bit more creative thinking in how I approach the problem. Yeah, of course, the added bonus is when we have forum, take the trees in Singapore. I give them a historical tour of Singapore. That's nice. Okay. And then, you know, we come back the earlier, so you guys actually first started learning coding. Have you actually hit the rubble and started to speak? Well, obviously there will be so many problems while learning is how you overcome those problems. So, back to, you know, my college case, when I first, you know, started learning programming language. I didn't have computer language, my entire computer company. So, I mean, I was very interested in programming. And so, I used to go to the lab, the computer lab. And the lab gets closed at a certain time in the evening. So, I had to request a special permission to stay late. And usually when you ask, help people, if you're really interested, people will help you. So, you know, I went to the college director and I expressed my interest and usually supported people with that. And he let me use the lab beyond the time it was a stroke. That's how I learned. So, I didn't have a personal computer at that time. I always reach out to one. Okay. What are you saying? Right. So, when I was 12, that was about 1998. Okay. So, we do not each, okay? Yes. Yes, that's a reverse engineering. Stepover clothing exists, YouTube did not exist. And online tutorials was totally not that thing. So, the learning process was very, very slow compared to what it would be today. I remember going to the library, in a neighboring town, to borrow a book on JavaScript. So, it's the old school kind of book that is made from trees. And we just take it home. And in fact, it goes in from the book into my computer and see how they work out. But there were a lot of these robots. And at the time, you really should be nowhere to go for help. So, the strategy was more to leave that problem for later and work on something else and then come back when you have learned more. But since I did this for fun, I think this never made me think that I should stop the clothing program because I still enjoy it. So, yeah, asking for help is actually very important. The way you are even online. Back when I first started learning some simple programming. When I ran with t-shirts, the first thing I went through was in four days of standard flow and all that. So, back in the day, this thing called the news groups. Anyone heard of news groups? Yeah. So, online news groups, they'll be kind of like chat rooms or more email threads. They're forums, online forums. And I would download all the threads and I would go in and ask questions. I remember one time I was writing a script in Lotus for listeners. There was a lot of sorts of applications. I was trying to figure out how to calculate range from one date to another date. How many days I should transpire between these two dates. I was trying to figure out how to actually calculate that. I couldn't figure that out. So, I ran on this news group and said, hey, guys, I'm telling you. How do you do this? And the people who did that were very helpful. They gave a lot of tips and ideas. So, that's pretty much, don't be shy because to ask questions. Because if you have the kind of questions, chances are out there that somebody else who has the same questions as you, they probably someone else you further down the road that has the answers and probably they can help you. Sometimes I'm learning how to phrase a question, helps others give you an answer, a multilateral answer. So, keywords, playing right keywords to ask for. Even recently I was writing something interesting called Insuiftry. It was really just, for me it was like, it's just like ash, right? How hard can this be? I banged my head against the wall a few times trying to figure out how do I get the value from my ash, coming from push notification and I was like, this is crazy. I was like, okay, no, I can't fix this. I went out and looked for one of my other colleagues who was a junior developer. She came in and kind of looked at me and said, this is how you do it. And she was like, okay. For me it was like, there's always something to learn. Even as a senior developer like myself, there's so many things to learn from you from juniors because they always have a fresh perspective on things which I think is very important. Okay. So, do you think you know learn anything differently from your fellow developers or peers now looking back at any direction matters? Maybe, you know, getting a mentor, I'm not sure, like, type in the first person. Okay, it's a company I used to work for on new innovation and they're really big on pack programming. So, at the point I was thinking of a career change, moving from one job to another and I was in my consideration for the job, I was like, I need to find a place where they are very nurturing and they really teach you stuff you can't mix. So, I joined company with zero moving on rails experience, zero experience. I have stuff, I've years of experience with DHB and some are Objective-C, completely took a chance on me and basically it mentored me. He was a senior developer parent of me. They were very big on pack programming so we worked on a project together and you basically learn stuff from a senior developer sitting next to you and you're telling what to do. I remember when I first learned Objective-C, which was moving I remember I was staring at a script for three months, not touching it, they were pack programming right, but he was doing all the coding after staring at a script or they saw how you do the dictionary or how you do that. So, it was quite fun. But then again, after a while it gets very frustrating, I want you to write some code so you just want to get out there and get some code. Having a mentor and someone help you along, I think it's finding somebody to help you with that, it's very important. I think I'm ready to say that everything that matters I learn from my fellow programmers. So, working with programming for fun and on my home for a very long time may be good at the basics like reading code and framing problems properly, but getting put into a team has taught me a lot more about being disciplined and writing code that is well structured and I think it can be read and understood easily by other people. I think that's much more valuable than all the things that I learned on my own. Yeah, I think for me, for all these years, I've learned so many things from my friends, my colleagues, but even recently that we do code reviews on a regular basis for whatever teachers we work and just to give you how experienced a leader is that you always get a different kind of perspective from your colleagues. How to code, how to think about a problem differently and making sure you think about something that you never thought about when you started solving this problem. It's always important to have some mentech from whom you can learn. So, one example I can give you is like a right on the point I joined this company called Red Hat, so especially the finance company and they have the distribution and software system. So, I was really happy in that job, I was really comfortable over the last 30 years and then this opportunity came in a start up where I had a chance to pick up a new language and that time Ruby on Red Hat was just getting popular and I had a chance to pick up that. But I was not really sure whether I would leave an established company like Red Hat and join the start up and that time I had a mentor who was a colleague also in the company and I asked him sometimes you can ask a senior colleague for advice on what path you are following in your career and what's best for you. So, he told me that if you really want to go beyond your comfort zone and you want to learn something new, you should work for a start up that is for few years in your life. So, you know, you get to do a lot of things in the software time and you get to learn a lot of things. So, I took his advice and I joined several start up companies so I worked with Ruby for three years which was the only way I kind of worked for MIT media last week start up through which I started my journey with IOS programming and that time I was just pretty new and then back in 2008 there was no literary tutoring available no not a lot of books available. But I was very lucky to work with that start up because the founders of the movie allows and then they had you know friends you know Stanford. So, the earliest Stanford lectures that you know currently is available on iTunes but that time it was not available online. So, I had access to the resources from you know the early days and I got to learn a lot of things. But then again coming back to the point you always have the opportunity to learn from your colleagues and mentors irrespective of you know where you work. So, it's always important to keep an open mind and learn from good thanks to. So, if I may summarize you know it is being fearless to join a startup and to learn you know you probably learn most of the things from a startup and we fix it even though we were a senior developer to be open enough to learn from the juniors as well as the community. All right, thanks guys. So, last question on learning how do you people with the changing friends? So, where should we start like our to our students who just you know are going to graduate next week? Where should they start? So, it depends on the label you're currently in you know if you're really in the concept of why you always might look for what's coming was changing and there are a few sources for that you know. First of all you need to know you are really popular developers in your own domain with this label. I was in you need to have access to the future where you can kind of get to know about this past future and then you need to follow these people you know at least changing their grades even if you don't do it personally you need to see what these people are talking about and then sometimes they'll post a link sometimes they'll talk about something that might sound like a job interview but then just to research on things that they're talking about. This is a lot of tutorials and all the videos are like indeed developers starting their own YouTube channels and getting a very popular element that having millions of views on their YouTube channels. So, that is another source that you can learn from the YouTube reviews and also making sure you understand whatever you're popular you know opens this library each making say follow those libraries and read the code read the code from the libraries and then try to understand how it's constructed, not just from some part of it but overall what is the architecture of these libraries or these applications and basically the data closer than events also give an opportunity to kind of meet other people and then you know get to know about what's not coming and what is the best brand and what is the latest tool that I would play using the community and so we'll be using that So guys you know what to do with all the data it's 10 right so the trends tend to move very fast she's especially to some communities so I think my tips would be to keep an eye on it when something new pops up computer is there read up of it and summarize in a few sentences what makes it different from things that are already out there but also focus on mastery one framework purposes that you have like your home base that you're comfortable with and efficient with so that you can actually deliver a whole application using that and after that I think it's a bit a lot of three sometimes so my recommendation would just be if you're picking up a second to the language or second to the framework pick something that you enjoy working with because that is going to make you want to spend more time with it which is going to make you better which is going to make you enjoy it more and once you have connected that loop then and everything becomes much much easier yeah I agree with all their suggestions read tweets free blogs watch videos go for meetups so a lot of meetups out there and then go to check out gbuild.sg there's a website that gives you all the lists of events that are happening in town go check them out go eat meetups go for ruby meetup and come for bsg meetup nothing you could do you're just reading blogs and reading ballad things all the cool things but what question question yourself what makes it so cool and stop just reading and start writing code basically jump jump the demand you see this yard is cool as anyone try yard npm yard and the competitive to npm right everyone say it's cool but how do you mean it's cool we've actually tried it go try it out installation for those are very simple I think you're online for all this information there it's also reminding myself that you know jump the demand of the um jump the demand of who and question and basic challenge challenge the technology I remember the first website I built I didn't know much about online animation like how do you do animation stuff right so I I went over on my first freelance project it was for bridal studio you're like oh well you want some very nice videos it was like a photo gallery of them or for the you know what they have nice bridal gowns and all that stuff right so I think myself what is the best way to display these gowns and I was like looking around and a friend told me about this cool animation engine called splash which is actually it was bought by a company called macro media that became macro media flash which then got bought by adobe and now it's called something else anyway so that was back in 2000 no it was maybe on that so anyway yeah I didn't know anything about flash animation so I downloaded the app found the tutorial online went through it and I was like okay I think I can do a nice launch like intro splash page animation with flash I was like okay let's try this I knew nothing about it but I told myself technology is not going to be that hard right let's do it let's write it out we can code scan fox scan images throw it all in and it's timeline animation to the left not much programming involved but then again I don't know really it's about just daring to try something don't just sit there and read and enjoy the enjoy the following words flowing away but actually write some code onto the back also yeah and if I wanted to add you know if you're not available or not free or made up base you can always check out engineers actually yeah so okay so thank you all basically this is this is the bulk of it where we actually get most of the questions on jobs and opportunities now so on questions on learning aside after I've actually you know graduated from a bootcamp or you have registered for the Southern level now you know as a student they were actually seeking for opportunities to get experience so where should we start should it be from internships or should they you know pick up freelance projects from maybe more central and so on so forth where do you think should be the starting point and you know any advice I think getting into a real project gives you a lot of experience so whether it's in intensive or freelance doesn't really matter but it's also important to work in a team you can work along and you can learn a lot of things but while you're starting especially it's very important if you find somebody who is quite slightly more senior than you or even if you pair up with somebody of the same experience level you have a team and they get a challenge each other and you learn to give us something if you do it alone whether it's a freelancing project or intensive there's so many ways you can do a thing you know wrong there's nothing bad about it but you but someone I mean to everything and character so that is opposed to freelance but I would say if you find an intensity in any organization locally that is a better option in my opinion I don't know what this might take right so so there will always be a freelance project because not all projects are large enough to be profitable for for agencies but we'll probably be careful in taking on freelance projects as the first thing after learning a new skill partly because you in a way you're alone so you don't really have people to ask but mostly because pretty quickly you're you're always going to shift from learning more into sort of a more self-preservation so I need to finish this project and I just need to make it work which is being cut out of the corners and by doing that enforcing bad habits as well so I definitely think freelancing is a great option but probably after one or two years of working on it I thought you were going to say you're an internet thinker boss yes after one or three years of inferring uh I actually I would say uh well just really my plus my experience as a developer for many years I was I was writing code on my own I said I was writing my own um I was doing my own freelance work I think I was doing I was doing web hosting I was doing I was managing servers I was learning how to do web design I was learning how to do php coding and stuff so I think part of the I think back in the day when internet was young it was easier to just be one man and do everything yourself but after doing that for like four years I thought it was I got really burnt out um I've learned a lot I've done a lot I've tried a lot of different things which on the highest side it was a good thing when I joined a uh uh startup my skills in doing do front-end back-end and manage servers was quite uh crucial because in a startup they want somebody who is all-rounded who can do front-end back-end and do everything that they need to do um slow as a independent developer myself doing freelance work I was left behind devices and I'm doing it on my own I was able to do a lot of things uh I learned a lot of things and I think nowadays with a lot of online resources you can learn up learn something to ramp up really quickly on anything new last time when I looked uh it was a website that was really helpful I think it's like how to force.com it shows me how to set up my own servers and other stuff skills that you may not actually need now because it takes a hero cool and all that you don't actually need to learn how to put your own servers anymore but even then it's pretty cool to know what such things are freelancing is good gives you an opportunity to try everything on your own um but after a while you do need to find people to work with because you know all these things I when I was doing very long business cycle I worked out about all this you should do the agile methodology you can do agile right agile man I was I think to myself I'm a one man how agile can I get I can't be agile as a one-man show right there's the whole way I can be agile well I can write tests but that's why right so true agile is being able to work with people uh communication is is key it's not just you talking to the client but it's also working with collaborators like also in doing in trying different things you also discover what you're good at and what you're better like for example I saw a lot I saw a lot as a web designer but nowadays like I should you should not let me do me web design because my design sensibilities are from the 90s so don't let me do web design I'll just tell you news tables nobody laughs I guess it's like a joke I'm sorry yeah so no after a while you when you when you try everything you discover what you are good at you also discover what you are not so good at and you can't be able to recognize that and sometimes you're having a peer tell y'all css is shit is a very good thing right or you're telling you that your movie code sucks please do it this other way right that's why code review is good and also controlling and working on open source projects you find open source project how do you guys work on open source libraries you use use open source libraries like you know you know open source libraries up how do you do again install jam install yeah but use jam right so jams are combined i reached out probably built by sub open source people probably they're made free and available to you and somebody's working on it so if you find there's a bug in one of those tools that you're working on look into their github account look at a github page and see whether someone has actually reported that but I remember one time I was working on github when I was working on php I was using I was using this framework called kphp and I was using a the basic of authentication I think it was no it was a digest authentication of the php library of the framework and there was something about that since it wasn't working so I was like why is it not working the frameworks shouldn't break like that right so I went and forgot hey wait I dug into the code it's not the way there's actually a real bug there somebody who wrote that piece of code forgot to use forgot to take the email email field or something like that so like okay you know what can I do yeah you fix it myself and just be happy and go all out of my merry way or I could just submit a good request which I did I went to their website there's a bug here you guys notice this here's my code changes that will help you fix that after a week or two somebody reviewed it and said yeah it looks good it will accept it and I have I'm proud to say I'll commit somewhere in the an open source library which is a very cool cool thing and sometimes employers will soon look at code for that I know that we are without degree and looking for developers in single power we're looking at videos of pro-life people and even iOS and Android people and one thing that stands out in resume is your contribution to open source libraries where you look at somebody who is very active in working on or committing not just documentation who requests this is too easy to do but if you follow a real bug there you will suggest a fix and you and you have code that's committed into the main branch that's something we look out for we have done something where we have contributed somehow some some conversations about how we'll make code better on the open source libraries that's something we look out for even I myself when I first interviewed a when I was first looking for developer for my company I was looking for one thing that stood out for me was I what you do in your phone free time that's a question of us what you do in your own free time right what you what activities or what other colleagues you do outside of your work time or your study time and the candidate that I interviewed here was some open source thing based on some another open source project is going on some way of there was chat related stuff online chat and form related stuff but that was that intrigued me that in this case good it was generally it was already working on stuff we should contribute to society and do the open source community for me that stood out and I wasn't a higher kid and eventually you know it's pretty good he's still he's still running around so yeah well actually on the topic of doing things that you're good at I mentioned and Teddy mentioned about mastery of the framework so for as far as developers you know which kind of what kind of framework should they be you know looking at if they are new to programming that's a tricky question if you didn't bring the language word but it is pretty well for you know what what language you have learned I normally advise you know just try out maybe language and see whether you're comfortable with it so if you have started with the movie or if you start with sweet are you comfortable with it and if you are not then you should look into something else if you're comfortable for example like I was recently has a sweet but earlier it was like Objective C and Objective C is definitely not language that he he should start you know category within it's not a not a preferred first language I would say the syntax is very different and it needs some time to get used to it so the first thing that if you are really familiar with the syntax you love coding in the language I still find that movie so much fun and it's just like English and so it depends like if you really enjoy building mobile apps if you really you know enjoy coding in that language then you should just stick to that language and learn more about it but if you somehow don't really understand some of the basic concepts of the language and you still find it really very difficult I would say you just want to ask some mentor for some experience that you propose they'll try to help you out but you still don't get it but then I think you should try and see some other languages that you can fill number a little bit right so I think it's probably a nice tool as I was talking about to start with what we can call a developer productivity language which is something like movie or Python that are designed with specific intent or the thing you accomplish a lot with a less work than some languages that are meant for embedded systems programming like C++ and I would also like to really create it I think almost the most important thing is that you really enjoy the language as well because it's going to reinforce the the learning by wanting you to spend more time on it so I'm going to say no yes I think I consider myself a bit of a polyglot I know a number of languages I know PHP I know Ruby I know Objective C I know a little bit of Swift and I know JavaScript I know Golang I've written some stuff in Python before so then it still amazes me how fast I can pick up some pick up language like when I was working on a project and I was working on a project and at work and it was written in Python framework to use was Django for me it was I was pairing with somebody I was like sitting with somebody and get a code after maybe a week I was asked to work on the very tricky library or other adding a big teacher into the into that framework for the client project working on I was looking on my own I was looking at shit this can't be easy but I got it done by looking at sample codes looking at how people write post codes and basically asking questions asking the right questions online finding out how this is done I think it warms down to understanding fundamentals understanding what what what what what a programming language consists of programming language consists of how to represent data for example how do you call you have flow control how do you have the artificial intelligence that even now statements how do you do loops data structures like strings while string how do you declare a string in a data language how do you declare number or how come local numbers you can represent that are represented in the language like what's in digital where's the float right how do you represent a true or false a Boolean right understanding these basic fundamentals helps you in asking the right questions and asking of the language so how does go lang represent a Boolean a true or false right to use true or false right in object you see it was yes and no and and once you know this fundamentals how do you how do you define a variable how do you change the flow of the code how do you represent an object in a code object already programming concepts will come in how do you so once you understand these fundamentals going to you you will not have any problem learning any language in a very short time how do you do that I think you are the first group yourself in one language right learn the fundamentals of not just a framework you I mean frameworks makes makes you lazy right you use a framework like real reals or jango it makes you lazy it makes you productive yes but it makes you very lazy right for for example um when I first started programming I was I was writing php code raw I was like writing php code of my own there was no framework nothing I built a framework without knowing what what the meaning of the full framework I've got an mpc framework without knowing it was all it's quite busy I just want to separate the html from the from the php code and I didn't know there was a terminology for that because no computer science right see so um things come into thinking when you when we start learning okay just bring yourself in one language I'm biased by saying php because you know php school in zili use uh it gets you who really want to web application php is very easy to pick up golang maybe but it's a bit of a different monster don't go don't choose golang as your first language unless you're uh somebody like our dream never mind uh yeah so bring yourself in one language once you you're near the fundamentals of a language learning other languages is fairly easy for me the biggest challenge when I first picked up objective c for example was a concept of memory management working for many years in php I have no concept of oh what do you mean if it's a now you'll crash the app right now one exception was totally nothing that I never knew what was that like or I forgot to de-allocate something oh crashes like what um that was the biggest challenge for me but nowadays if swift you don't worry so much about that with ARC in objective c you don't worry about memory management anymore which makes it a lot easier for you to actually pick up read language nowadays the differences between the languages at I don't see much difference in all the languages now if I use a language like python or movie or php all of them as a concept has a concept of object oriented programming right uh strength as well as object oriented programming so understand concepts understand fundamental concepts about or computer science well maybe not computer science but conceptually how you relate what commonalities you do one language to another and the way that it's included first in one language maybe java or javascript you know these two are doing different things right yeah so get yourself written in one language before you learn other languages and frameworks frameworks will appreciate frameworks more once you start using it so like you start you do start with just plain but they love php or java javascript uh once you learn about frameworks you're like wow I didn't know you could actually do this so easily um which makes you look like swapoo person but you know but but for me it was um quite interesting so once I learned that there's something called frameworks it makes you fix your job because you come to a point where you've got enough of a new goodness in the language and we want to suck at productive is where you want stuck making money and earning a living and that for that your time becomes your money right you're combining time to money so being productive is important at that point in time okay okay thank you um so the next big topic question um what is the current demand for iOS and web development software especially you know moving on wheels um so in in especially in Singapore and of course in global context could you you know share some like on this I'll make a great answer for moving wheels uh answer for iOS um actually for mobile development uh there are a lot of uh requirements both in Singapore and globally um and especially for iOS uh why do I say that uh because the app ecosystem is like that um there are a lot of Android apps everywhere but um users of Android apps they usually don't uh pay money to buy these apps um so it's like most of the time it's free um there is no review process by a global distro to get an app so there are a lot of apps there but then when it comes to building apps for enterprises or startups usually they prefer their first app to be hybrid so they can look into any and start up a new industry on instagram first came up with the ios app um and there's always a startup they just have an ios app initially and once they go big they think they want an Android app unless their target user is uh target users are based in india or china but a lot of Android devices and they want to target uh these specific uh so having said the demand is uh a lot um as I said there are people locally um in Singapore who are looking for developers um most of the times they're known for people having at least a couple apps or at least one app on app store if you don't have any um apps on um apps store and you have developer experience at the first to be honest in it um but if you are just starting with this course your experience is basically whatever app you build it from the app store right and if you don't have that then uh you probably need to start working the interns or start working this small team have this first app out and I have something to put in your portfolio that you know I have built this app and we so and so famous this is how I did it and this is how I built it um so um having said that uh like for example grab recently um they they were looking for like fifth build system I was developers to join the team uh although they have a different kind of selection process uh but then see whether there are a lot of startups also looking for people developers to uh join the agent uh they are not finding uh developers uh like uh Facebook is for developers and if you know about this uh platform called hire um so you can just go and create your profile on hire.com and then you can choose a big uh which company you want to join um so uh I'm gonna come back to my initial statement that the demand for mobile developers has developed is quite high um at this time at least so thank you right so the demand for Ruby always programmers is uh globally high and in Singapore Ruby has a strong support as well so there's a social group of programmers which is also true for some other Southeast Asian countries like Vietnam and Taiwan and obviously in Japan since that's the creator of Ruby is Japanese they're always looking for the full Ruby developers so so yeah so the demand is really high you're a polyglot right yeah so um any insights to share about um the demand for the various languages just learn what I mean with your how to give a politically correct answer I think companies are all okay they they they took out comments that you you want to work on now either web applications or mobile applications these two these are two areas where the startups and companies are actually doing uh uh a lot of needs needs or help with there's another area which is uh more on the back end so that I say that is we call it DevOps so they say that developer operations so whatever you need to like on the server side these are also areas which um are in that demand the people looking at people we're looking at people who can who know some managed servers news with some so what maybe have you guys been learning are the mostly front-end stuff that users can relate to web applications and mobile applications but behind all this there's a whole bunch of other things that happened before your application gets deployed into production right so this the DevOps is another area where a lot of people are in it as well um especially if you're not the type who wants to work with people you're more comfortable talking to a computer uh interacting with a machine um that's the area which might also be there needs that's the requirement to be a devil uh being able to use uh Linux commands you learn all the basic Linux commands how do you call you an administrator at the Linux server um docker you learn all the latest technologies like docker ansible um pop-up chef these are probably the words that are foreign to you right now but these are all like um we call them okay well ansible and chef and pop-up these are what your configuration management so they use that to manage the configuration on the machines that run your applications right so um and docker is another way of actually deploying applications so it's not just uh as a giant machine or virtual machine but it's a small little server that runs one process which is your application um think of it like aerocool a new aerocool uh push you basically you deploy a small server a small server mini server it's basically a docker container it could be so um think about what you're really good at what really attracts you to either front-end um you like working with web web technologies go with uh javascript go with some uh front-end stuff like css or sass or less or whatever learn about new technologies there are you really into mobile apps and think about what you want to do uh either as old ios or android we're doing ios i recommend learning swift you will do you want to do some android on java there's another language that you used to write java java code which is called in you should also check that out this is quite good cool language to try you want to try something that is a bit mix of javascript with mobile development is you can check out react native which is another favorite that helps you you write javascript it compounds into a mobile application for ios and enjoy it so it's kind of it's kind of cool for you to check out so these are new technologies so you don't wait and check this to the other way to look at this is to look at job sites which are the sites which are the jobs and a is the most that's another way to look at it right you think but then again don't you don't don't let it be your only uh criteria because channel side where you base you a lot of money means that you want demanding which means you have to pretty well and do other people means you really have to spend all hours learning about it right so this thing about which domain you want to get into front end back end or you really like to work with data they're going to data science or data machine learning or data you know data science and machine learning these are different areas which are in hot demand right now people are quite hot in the sense that a lot of job offers out there um then again it all comes down to what you think you are comfortable with and also sometimes don't let comfort be a criteria if you get too comfortable it's not like when you get uncomfortable with a language it means you're on to something which means that you're on to something it is so easy everyone can do it it is hard it becomes uncomfortable you know that not everyone can do this you invite a master this that will be your um your your your your trunk up basically what your what you can be good at right what you can be don't for you think is uncomfortable you might want to something just keep driving at it um and some chances are it is difficult it needs a very few people who don't know how to do that well and chances are you probably get a bit more okay we'll hold this topic on our salary laser but maybe you know Michael you could describe about a day in a line but um in SP so recently there's this article about the new union of Avengers right with South China as a big theory so uh i was like which superhero would you actually i'm actually very curious okay so yeah i'm in a line there's a developer in SP you actually showed us a new office on my level eight right is it is it ready or not uh it's somewhat ready some already yeah okay so um in single power we practice agile so we we have we we practice we believe that building modern applications right now we want to have a modern way of doing things basically want to build an application as to be as possible in the past people has built and spent years just to build out something and get deployed in point of order format so in single power we believe in using agile technologies uh in order for that to happen we we we basically we believe in quick validation of ideas and writing code that's test driven that can help us move quickly right so in our teams early in the morning what we do first is a team setup so we basically get a team together we will uh have a standout is literally a standing up thing everyone stands up we'll get in the circle in front of our project board we look at our story so we have a quick report about what everyone is working on so in the standout we'll just say one two sentences what you what you were working on yesterday and we'll talk about what you want to do today so we look at the people we look at our project tracking system which is called people tracker we also look at that say who's looking at which story and will feature story about their working on we'll ask everyone do you have any blockers whether you're facing any any problem or issues that you had to have with a story you're working on from there uh we figure out what the blockers are trying to solve them as quickly as we can otherwise with everyone was scattered and started about the day working on on the code and they're working on um around 11 30 we have lunch because we believe in being the crowd getting out there and having food we go where the food is good okay um yeah and then we carry on going through the day um um sometimes we also have something called retrospective and iteration planning meetings these are all little agile ceremonies that we do basically what iteration planning meeting is kind of like a team comes together together with our project owner uh product owner and we talk about what we want to do next right we talk about what we want to work what we plan by one week ahead uh what we want to work on in the next iteration which is a next week uh we think about prioritize story think about what we want us to work on next either uh the front end story back end story all is all tracked together and then uh we put out what we have visibility of what's going on I think very important that we communicate with the people that that it's kind of like paying us to do that and then maybe also other ones who have approved what we work on um so iteration planning is very important for the team to get in sync in on what's going on uh occasionally in our kind of month we also do something called retrospective so retrospective is basically kind of think of it as a evaluation we think we come together to look at what we've done what we've not what what went well what did go so well and how we can what are things that we view having not so sure about so basically it's a way it's a way for us for the team to because you know in the team working together in close proximity we tend to you know bump each other in some uh ways or we feel that there's some things that you are doing right or wrong we want to have a have a neutral um a neutral place to where everything voices out I think it's very important to me as our team because we're working very intensely on something we may forget the machine our little habits may be affecting other people around you uh like we're not writing enough tests or you know this code review what you keep complaining about this particular live code and stuff that stuff that can block very badly you don't deal with it uh as quickly as we can sometimes uh it's not just about uh conflicts it's also about um how if you can do that so we should we should continue doing okay or we should give courage to our fellow developers on how how how they've been doing so well uh and and the little things that they do that you don't know that they may not know about but but you notice and having that is a very encouraging thing and I would encourage the any agile team to try this okay um then what do you love most about your job and as in working with I think it's about working with people who are serious and professional and we all I think everyone in our team we're probably so far quite um serious about our craft it's not just about writing code but it's being um good at it and so we look at it not just as a job but we are well I think it's like craft that we are we are the skill that we're making better at the sharpening so in the way we work with people who want to help make sure that everyone in team grows like my team right now we have two junior developers and I think I think at a point in front are you are you two ladies growing are you two learning cases like both my ios developers so I made a point to ask them every time we have a retrospective are you learning are you growing and I want to try to make sure I light up stories that will help them grow and the way I also want to encourage our senior developers to pair program with some of these uh junior developers so they can grow to right sometimes there's so many things we can learn from each other and it's in the team this is the best way to learn from your peers right so do you have anything to learn now so what do you actually learn about video testing when point number one yeah um a lot of the processes are about the fun acts the fun things that we do um so we we are from our regular activities regular visits we do have this thing called um Thursday so so we get all the answers and when we take turns to usually volunteer to say or something um that we love and uh not necessarily related to but things that we have experienced or we have tried and we would love the technology it can be too many any new things that it came across and then we usually started this thing called Friday hack so it's like a Friday hack is kind of uh doesn't end in Friday we let aside like two hours so to work on some apps together which is different from day-to-day the things that I'm doing but those are all the side things but uh addition to what my team is like the team is very new it's only like five six months since all of us have joined we are best in a different office to the country it's also very different from a lot of engineers have joined our community from the startup community and in Singapore the way I see it it is like a startup innovative organization we have um again the things that also introducing is also very new to Singapore power processes uh uh you know the way we are calling the way we are also intending to deliver projects are very very new to observation but that's what we love and uh another thing is uh like I personally feel that all the guys we've got so far um are really open to new ideas really open to learn from each other especially out there uh kind of um you know the way we work there again uh like we don't mind telling the juniors you know uh mind you know sharing something for seniors also so to say no you know difference in in terms of that hierarchy that I should I say this if my boss hasn't already filled I know really you know really feel bad for them they say we are fully open to open up our opinions and the ideas that we have and I think it's kind of a great team um that we have formed in the last few months uh so yeah I enjoy working there right so so I do engineering management so my work tastes are split basically I do one third technical strategy I'm looking at the projects making sure we have understood and framed the problems quickly and that's the solution is is going to work for the projects uh one third of my time I do coaching and overviews and write codes together with the developers and one third of my time I do what I call other things which is community recruitment or sales presentations things like that so normally if I have something that needs my undivided attention uh I'll work on that first thing in the morning from home because when I come to the office uh I am open game uh and it's supposed to be that way because my job is actually to unspeak the developers and they understand and have to progress in the projects um and I will make it in time to to grab lunch with the developers teaching um after that I will do some core reviews and um a lot of time white working with the developers because um we normally have a lot of projects and I am involved in all of them so a lot of time goes goes into this at 3pm we have IKA which is our scheduled coffee break um and we play some play some board games or play some football or represent every day at 3pm every day wow I suggest this to my boss it's mastering me now okay and if it's a first day we'll have to get a third step which is similar to what we do in Singapore however we'll have uh a junior should give a talk about uh either something programming related or something completely unrelated so so we're actually having to take our first day today or my colleagues tomorrow and one of our interns is taking a workshop on urban escape tactics which is like how to get loose from being tied up with zip ties and stuff right okay how to regain your sanity recently more than something okay all right so what do you love most about your job I think uh what I love most about working in Thinkbox is the extreme amount of autonomy that we get as developers so we're all together in charge of constantly improving the way we do things and we have a lot of room to experiment and try out new things so I think the thing that has driven me from previous jobs is the sense of getting stuck in terms of improvement I have tried all the avenues to try to improve something that's not working but without having any effect whereas in Thinkbox I am a church and allowed to actually fix problems as they come thanks okay so one to the second part okay um so this question is for Natalie um so you look for Thinkbox so how do you manage clients from hell all right all right so I I like to call it less sophisticated clients so I think it's important to um just to be clear if you have a client that is abusive then you should tell your boss about it and if you are a boss you need to make it clear to the clients that being respectful to other people is more important than any business concern and especially as a boss if you don't stand up for your developers in this case you're going to do them really quickly but if you have a client that's just hard to work with I think it's important first to understand why or what is it that makes the client hard to work with and in my experience there is usually two binational so one is the technical sophistication is the client clueless about everything that has to do with technology so communication and managing expectations yes but it can also be problematic if there are two texts suddenly because they they get much attempted to get involved in how we actually you are working so and on the other dimension you have the involvement some clients tend to get too involved and micromanage which slows everything down on the other end of the spectrum you have a client that hands over the requirements and they expect to come back in six months and just tend to be done so what I normally do I do profile the client that sounds crazy but I will profile the client initially and I will address my communication according to what is needed if the client is too hands-on I might need to protect the team if they are more more assertive I might need to be more practical in gathering requirements on the client I think the most important thing with clients is to communicate to them in a way that they understand so I will normally leave out all technical details if we run into a problem I will tell them what the problem is and what it means to them in terms of their business and normally I will have two or three options prepared for how we can solve the problem and how those different solutions relate to their business and in terms of effort how long time what they take because I think if you come to the client and you have already done your homework and you suggest the solution they expressed for their business then that will be okay thank you now what about managing fellow teammates slash developers from hell or unsolicited teammates right so luckily I have not had any colleagues from hell but developers can get really coordinated and a lot of the times we need to take a step back because these these clashes often happen because of underlying dogmas so for example we shouldn't allow ourselves or colleagues to be lazy in in code reviews and feedback and say things like I think x or I feel x we should actually also clarify what why am I actually why don't I think this is a solution and sometimes there might be two equally good cases proposed by two different programmers and in those cases I think we just need to take a step back also as well as the outcome that we're looking for usually one of the ideas will seem better in that light and I've not been in any case where we couldn't agree we can go into the party often thank you thank you what about Michael do you have similar experience to share so I have been right now I'm involved in the recruitment process as and simple power and obviously my job at computer labs also we also had some small role play as everyone looks into everyone gets a chance to review people who are joining us as we believe very very it's very important to hire right and take our time to hire people in a sense we we know that when we take our time to hire somebody to have a problem process of hiring somebody it helps us reduce the problems that we get only when the person starts as it will reduce the risk of having to hire somebody which we feel that we're going to be able to fit I think very many people look at persons okay so okay a person's resume is nice but we also want to make sure that the person really knows what he what he says he knows we also feel very very so we very feel very strongly that we have to make sure we have process in place to hire somebody and to build with select people which you feel you know you can say it could be like a some it could be probably in some culture but it's very important to hire right people that is they can fit the culture of the company that will reduce the risk of having problematic colleagues yeah okay thank you what about my process like how much do local companies HPA for instance of juniors based on point and what about the career progression track we still can give us so this isn't like how much the local companies pay to insist you hire or how was it paid to the developers uh salary right yeah but well it depends on what we're into nation um but if I just put it in number I have to put it in number I think um if you are really junior prison or college you have some experience but you're trying to get a junior with courtesy um um please grab um three kings is an average but again it depends uh on optimization optimization sometimes uh startle might you know pay you really high because you have done six months intensive there and we are very aware of your skills and then we have shown some importance to you know build some great projects and also it kind of sometimes depends on um the the thing also um I won't get into that in the details but um three kings is what I was saying it's kind of an average for it's the statement average for for large costs also but then sometimes you know some some really good established product companies could be like okay to you know of respects but again um if you have sometimes it matters to have a formal degree because then you get uh you know you come to the university and the university sends you to these companies and then they have sometimes a prior kind of establishment and then you check with your biggest police and it also depends on how well you can use the HR for your for your salary is like uh as you never know what if you're getting a first job you're happy for the job and you go for it because it's early then you um that's what it's important for that agent officer and if you really know that you value add for the team and then you have to skill set uh when you can come to the game and try to do something that is uh more what about I think about right so so I don't know the exact numbers either for the salaries but I can talk a bit about the career costs this is a challenge I think in the tech industry in general that it's history has been very hard to make a career very simply if you want to be an expert developer then you sort of get started at the senior developer tier there are some companies that are for acknowledging this and are actively trying to change it so you have companies like Travis E. Biden so they have actually split their engineering career costs into 18 distinct levels so that you can continue to progress as as an expert because doing engineering management or project management which are the more old school career costs is very different from being a programmer and I don't think it's something that everyone would enjoy doing if you're already enjoying doing programming a lot then try to buy a company that can that can accommodate your growth as an expert I think don't be too so confused although we're so obsessed with getting a higher salary don't be so obsessed but we're more obsessed with learning and finding out the teams that can help you get better at what you do having said that don't sell yourself short right if you know that you are good at something and I say you found some really troublesome thing that you found yourself mastering you know that you probably you know that you can be worth more than some people so their startups probably have working itself can be quite interesting in a sense you can do a lot of things you have opportunity to try a lot of different things and they may not actually pay you a lot but the opportunity to learn so learn to do things learn how to manage servers and do also funny funny things which you do work you may not actually have a chance to do in a larger company so you will join a larger company while you're a silo or vision hope in doing some one little aspect of the business unless you request to join the other team to try different things so chance of you enhancing your skills in other areas beyond what you are you will join a company for maybe a bit lower you join a big company whereas you join a startup the chances of you learning more things and trying different things and being just being being an all-rounder I think that startups do get um so the second job that I first job I joined was basically the first job that I joined I think at quite high pay um but you gave me opportunity to be the only back end developer in the company working on back end stuff so when I joined by second company I was able to use that resume in my resume and say look I've done all this holy shit I've done all this back end stuff and I've done some iOS stuff as well you know in future you need to get a personal work and some iOS related stuff I could help you that I've done also I've done actual things on my own I've tried some benchmarking of different types of servers like how does an Apache server compare to an GNX server in terms of road testing or actually so stuff that you wouldn't probably have time to do um um so that you shouldn't have uh you shouldn't get experience you will get experience doing in a startup um and then you can use that in the next resume you may not start out with a high pay but because of the learning opportunities you can get you will help you do a lot of your resume for the subsequent jobs you go for I can categorically say that I doubled my salary in four years just because I was able to show growth personal growth in many many areas thank you I see it already okay um so the next question um you know a lot of people are joining for this are you guys preparing any interns or are joining software developers did you share with us in your criminal process I think my whole shared a bit on getting the teams to know in person and so how how do you think you know um any aspiring developers or buying developers among joining you guys get there well just to answer the first question are we currently hiring any interns or junior developers interns at the moment no we are differently hiring uh junior developers protect secrets on the um technology uh personally for my team uh in iOS uh recently hired some junior devs from the community you know from schools like this and then uh so we have a good number of junior devs uh as a moment in the team and we want to make the right balance in the team we can't really have like so many junior devs um in the team because when the time comes you know the right balance in the team matters um but having said that that would change very quickly because we are also growing in our nation and growing as a team um now the second question is how do you get to know about this opportunity and how do you um specifically apply for this job right well with Michael and me and here you get our contacts you can um talk to us later but the aspect of just single power right how do you apply a know about these jobs in any organizations or you know the the thing that would stand out is uh just make yourself visible we don't know who you are like if you just sit in one corner we want to know about you um you might send your resume but then like hundreds of developers sending the resumes thousands of developers sending the resumes um the resume filtering is also a kind of a pretty part in bigger organizations or stars also they have limited opportunities that some part of bandit might be looking for one another bandit at least a hundred other resumes that's not going to help the bandit so that is why getting yourself visible in whatever way uh if you're especially interested in obviously in Singapore uh in whichever technology you are interested in whether it's a movie or ios or androids i would be i tried the same thing that i have been telling you that whole week of speak to people and then if you have some apps go to the people in other people you see guys like me not only just me but you see there's another great organization another senior from another organization is there and you know come to them don't just ask already do you have any job which you want me now just you know say that hey i have well this app um i wish i could love this app you have any feedback from me you know and then the more interested or passionate you are about your um you know um commitment that kind of stands out and then when there will be an opportunity with their organization or where they are the one quantity because the dinners are not a lot of developers in in this vision and then continuously off all the time companies are looking for developers so make yourself visible in whatever way possible uh if you are ios yet try for i don't know if you are still eligible try for the apple or wbc as policy program i don't know whether your age is as long as i can test another way to be visible um in the community if you have um gone to the wbc policy program or speaking some forum you might sometimes get scared to speak in a forum but just try the smaller circle first and then um the care is having this uh spaces thing uh um where she runs uh where he junior does come and then they um kind of put something together that is how we all something the community here is very small and you know we really know um everyone by names and we know everyone by face so if you are good we will know you one way or another you know either um and we'll find you if you have done something good uh and you have something that you have so yes right so so integrals we offer paid internships and they are open all year round so depending on how saturated we are on the internet at the moment you can always drop an application through our website and for interns our expectations are not that high so as long as you can show us something that you built it doesn't have to be perfect and we'll probably invite you for um for a quick interview and a small technical test and if the whole is good after that you're welcome to join us as a paid intern for three months initially and we currently have two previous interns who are now working with us as school principals as junior developers and of course we're also very junior developers if if you're a right person then we're always hiring um so our expectations on juniors in the company is that you can complete a simpler client project on your own with ticker box quality standards applying without causing a huge mess that you qualify as a junior and you can easily show this by building a well polished project on your own and if you even add some some tests to it and that would definitely go to your head of the game when you're sending your application and so on so any kind words this is the last question any advice to the students and buying developers I mean against the same thing uh just by learning a lot new technology a lot of those are not going to really help you it's the first start it's the first step but the next thing is to uh how you build um something real how to build it will it that people will use or at least getting rid of with an app or a website or a you know tool that you personally will use stuff and then get it done with it by yourself or through uh you know working with your teammates from the school or you know friends and just get something out there and then put it online put it on the app store and then make it as a disabled and from there you can get carefree back from your mental safety back from the established developers and then maybe they will give you a lot of opportunities they'll give you a lot of exposure I think my advice would be to really enjoy your room because enjoying it will uh incentivize you to do it more which will make you better which will make you more enjoyable and yeah also if you're interested in your setups in the local meetups so you have the irs meetups you have the php meetups and the lucrative meetups uh isn't it the worst thing that happens is you go there and get free dinner so it's it's not for the price yeah now we'll be the meetups have free pizza so yeah you save some money I think for for you guys how many of you guys are just students in this batch one two three cool so my advice to you is don't stop learning your learning continues keep learning new things um because once you learn here if you know it's a lot of things you've learned the last few weeks or months it's not enough it's really not enough it's just gives you a taste of what is out there if this is you really want you after going through all this and feel that it's the career you want to get into don't stop learning people that will hire uh and single power who have come through programs like this uh is we don't we meet it okay in my previous job here in the lab so we've interviewed lots of people that come straight fresh out of a program like this and all that failed with the first interview because the fundamentals are just not there they don't have a good foundation in the programming that we can group that we can group them it's not easy to find to have that in a very crash course scenario like this it's not easy to get it you can get it awesome but but it's i would say it's it's a lot of things that we have to absorb in a very short time take your time now to really revisit what we've learned and continue learning go go for other courses outside of this go for those people who have hired a single power for control program like this we'll see their ability to continue learning one day who has gone through this uh first uh as a web developer and after a while she decided to change and learn swimming in the state uh and we've seen a capacity to pick up uh knowledge very quickly and from there we can tell that this is probably somebody who has potential to grow and to be better at this so it's showing us the ability to learn to grow to continue learning and be faster because i think we're joining a startup or company that is like a startup you really have no time to slowly groom you of course they'll have a mentor to help you but not it's a luxury that not many companies have you can join a couple of virtual labs you will groom you but maybe not now get get some time spend half a year learning other things getting better so just revisit what we learned in the last few months look at it and say what are the things that you that really draws you in get into those things that makes you uncomfortable get comfortable with those things once you've learned all that go keep learning just keep learning um and that will show in in your code the quality of the code get clear reviews your friends here continue to interact with each other uh look at each other's code once in a while meet up occasionally um talk about stuff not not just ha ha but talk about code what makes a good coder what makes a good developer what do you find admirable about the zoom tab in myself what do you find on all these that we have that makes that that we feel you kind of spiral to learn from coming to coming to meet ups is a very good thing i think uh we then we get visibility get put a name to a face right and then we can then ask you what what have you what have you done if i'm asking what you have you done what have you done so far what are your what projects we've worked on uh if you're interesting you can come in something interesting if you're good you can come in something interesting oh sometimes it's like what is the claim to fame right what is your claim to fame what is the thing that i can immediately know oh this guy and he's done this before it's pretty cool so when i usually when if i kind of hire you sometimes i get i get requests oh i'm looking for a developer i'm looking for junior developer for this i'm looking for junior developer that if i get those views i know that you're good at those things you'll be the first you'll be on top of my list uh or we recommend you as well right but i don't know who you are i don't know what you've done it's been hard if you tell me you're working on a particular framework or you're doing on a particular library and i know that a company looking for that kind of person i can recommend you immediately right so yeah get your face out there we can get more social with people like us and if we want to meet people come talk to us and we can introduce you to people at me ups right um so you know these three of us are at gpoint and plus we've been and and many and kato and you know tbl everyone of us are have have contacts and leverage a lot contacts plus it's also in our interest that you grow it's now interest that the community grows uh as because they're not my engineers out there they're not my software developers out there and we are saying half a month but it's it's in this service of the community if we recommend people who can't get the job done or will keep us happy right so we we to join our fraternity we have to be serious about this um yeah and of course i hope you all hope we show success thanks michael um well if i would summarize basically just never stop learning and enjoy what you do and of course you know inverse and ecosystem um basically be visible um yeah thank you all so much i think um it's been you know um it's been really an inspiration to all of us now um because of a bit of time over around we probably have time for one or two FAQs do you guys have any questions um for for them no i'm kind actually i'm from the product design tribe uh but i'm so very interesting engineer uh which is now michael you mentioned uh your your daily routines you talked about test-driven code some curious work work that means and also when you do your stand-up meeting right uh if someone says they're a docker do you really talk about how to unblock at a moment or you take it apply based on these two questions so test-driven code is basically you write the test first before you write the code uh in south so test code test testing code is also code what type of code do you mean uh if you're writing yeah no maybe not really but it's more like if you're if your function is supposed to do something um you write a test that checks whether with the correct inputs does your function give it correct outputs okay also we uh uh integration tests that could be like on the app itself and where I type on this button and type on that button I should then reach a clear screen there could be interaction uh feature tests development feature tests can apply to the web application the mobile application and even types of tests that could be written um for any any code uh test-driven code we it's something we aspire to or we put why would we why why would we like test-driven code is because if there's any changes that we need to make in code in the future it makes is less expensive to make changes to code because your test your your test that covers you as in when you make a code change somewhere to make sure that you don't bring any else on another basis what you do you test it manually right they have a test driven you have a test that you run through the reservoir of your code that makes sure those other parts that you didn't touch are not broken by a one code change in one place it makes it less expensive to make changes to your code and so blockers we it depends depends on how blockers you have right the short answer is it depends if it's something that you can describe in one shot sentence or two shots and uses um we'll probably try to solve it as fast as can if it's a code it's a code it's a blocking it's a blocker based on i don't know how to work this code less so if it's that kind of a blocker i can sit reveal and probably help you through that code and see what we can do or find somebody who knows that code better if it's a blocker based on um policy or some other things they will try to get it offline and we will judge that in a separate in a separate place like we know that this is a blocker based on something upstream like a product owner has not decided on certain decisions we should then have a chat with that product owner and say what how do you mean by this how do you mean by that right so that's pretty much how you deal with blockers highlighting these things early is very important because then we know a constant feedback back and forth the communication between everyone in the team is important we put on in agile teams we put a premium on communication and being transparent about what you think is it's going to affect the productivity of team or affect how we deliver the problem more questions compliment my cook i perceive one thing you repeatedly mentioned about mastery too often in Singapore you find they keep on learning and learning not knowing what they're learning the budget in the software dimension too often they don't go outside the box they don't reinvent even OS and surround they're just happy to you know like why you know it is cool and keep on learning being a follower and never an inventor so what kind of talent are we looking for actually in terms of you know when you can excel and get refusing to excel you don't want to be a champion so what is it learning problem in Singapore sometimes i because i my study history so i can i can say that it was a small country and in a small country we do have little say how global right i think even even so i see a lot of ngs working in international companies at facebook google you find a lot of them are Singaporeans quite a number of Singaporeans are working in facebook not in Singapore but in central valley right so we're at the heart of all these innovations happening um i think it's important to think out the box and the kind of mastery that could bring us to that point where we can lead us rather than with followers i'm not sure if i i don't think i reached a point and i think there's something i was going to aspire to learn to get better at being a top leader because i'm so comfortable with being a a follower as you say um being a master master of one thing i'm comfortable with i think i should speak my own advice and get out of the comfort zone i think to learn stuff they can keep make keeps me uncomfortable um being a top leader but i don't know i don't think i i may not have enough knowledge to be that but i hope you really certainly that's when i run the phd conference i there was one comment made by one of the one of the one of the my keynote speakers is that it might be a simple great place to run a conference it's the first time i'm in asia um it's great but he says that we hope to see speakers coming out of this region uh going to the states and speaking in the in the states and then explaining those other conferences outside of Singapore and outside of asia which i think is slowly happening uh silently uh bassoon recently spoke at the javascript conference in overseas we have Audrey uh who basically spoke at uh gold gold conferences it's not okay it's a silicon valley awesome awesome lady i don't think um yeah we need to build top leaders and don't think that you have telling the offer i think as truly as you can also have a lot of interesting insights for offer i think that's something we should try and cherish that you do not know everything and when you discover new things it could be something new that all together that we do not even know about so yeah questions no um if not then um we'll end the session but before that thank you all three four years hard today and uh i'm so so kind of appreciate it for all of you okay all right um so the next part of the session is uh just one to one mainly so if you have any questions um for our speakers please feel free to approach and ask you here and thank you all and we leave them around the class