Blog

  • 싱가포르 IT 개발자 디자이너 연봉 확인 방법 – mycareersfuture 정부 사이트

    싱가포르 IT 개발자 디자이너 연봉 확인 방법 – mycareersfuture 정부 사이트

    싱가포르는 연봉 정보가 오픈되어 있다. 왜냐면 기업이 외국인을 채용하려면 일단 싱가포르 정부 사이트에 채용 공고를 올려야 한다. 즉, 로컬(싱가포르인 혹은 영주권자) 채용을 우선하고 일정기간 내에 채용하지 못했을 경우 링크드인 같은 곳에 외국인들을 채용할 수 있는 공고를 올릴 수 있기 때문이다.

    연봉 정보를 확인할 수 있는 사이트

    1. mycareersfuture.gov.sg

    사이트 접속해서 검색해보면 알겠지만 신입, 시니어 등의 연봉 테이블이 회사별로 올라와있다. 구글 페이스북 이런 회사들도 채용하고자 하는 포지션과 월급 정보(최소 월급~최대 월급)를 다 올린다. 여기에 올라온 정보는 꽤 정확하다. 외국인 채용을 했을때 해당 채용공고 ID기준으로 비자 발급까지 진행한다고 들었다.

    단, 공개된 정보는 Base Salary 계약 월급이다. 사이닝이라든가 스톡옵션 정보는 포함되어 있지 않다.

    2. https://nodeflair.com/

    nodeflair라는 사이트는 애초에 싱가포르 지역을 타겟으로 연봉 정보 등을 제공하는 서비스다. 지금은 태국 등 근처 동남아 지역의 시장까지도 연봉정보를 공개하는 쪽으로 서비스를 확장하고 있다.

    그외, labels.fyi 혹은 payscale이라든가 주로 북미쪽 연봉 정보를 공개하는 사이트들이 있는데 내가 이 포스팅에서 소개한 사이트에 비해 정확하지 않은 것 같다.

    마지막으로

    싱가포르는 계약시 연봉단위가 아닌 월봉단위로 계약한다. 즉 한달에 얼마를 받겠다로 계약을 하는 것이 일반적이다. 연봉으로 환산하고 싶으면 12를 곱하면 된다.

  • 일본 도쿄 아사쿠사 하이라이스 맛집

    일본 도쿄 아사쿠사 하이라이스 맛집

    아사쿠사에 가면 오래된 하이라이스 맛집이 있다. 하이라이스를 좋아하면 꼭 추천하고 싶다. 단 대기시간은 엄청 길기 때문에 기다릴 각오를 해야 된다.

    외부

    식당 내부

    메뉴사진

    사이트

    http://www.yoshikami.co.jp

    위치

    1 Chome-41-4 Asakusa, Taito City, Tokyo 111-0032 일본

  • 워드프레스 사진 추가 안될 때 해결법 – 유료 전환 없이 용량 문제 해결

    워드프레스 사진 추가 안될 때 해결법 – 유료 전환 없이 용량 문제 해결

    워드프레스로 작성한 글이 어느덧 꽤 많아졌다. 업로드하는 사진이 많아지다보니 더 이상 사진 추가가 되지 않는다.

    해결법

    일단 자신이 쓰고 있는 요금제를 확인해보자. 나 같이 무료 이용자라면 아마도 3GB 까지 사진 업로드가 가능하다. 용량을 초과했다면? 워드프레스를 돈내고 쓰는 요금제로 바꾸든가 아니면 플리커나 구글 포토를 이용하면 된다.

    사진 올리기

    일단 플리커 혹은 구글 포토에 사진을 올려라. 그리고 해당 사진에 대한 링크를 복사하자. 아래는 플리커 Flickr 서비스를 이용할 경우에 대한 설명이다. 구글 포토도 원리는 똑같다.

    첫 번째

    사진에 대한 공개 범위를 변경해라. 혼자 볼 비공개 포스팅이면 상관없지만 전체 공개되는 블로그 글이라면 사진도 전체 공개로 바꿔야 된다.

    두번 째

    공유하기 버튼을 눌러서 사진 주소를 복사해라.

    세번째

    워드프레스에서 Flickr 추가하기 버튼을 누르고 두번째 단계에서 복사했던 주소를 붙여넣기해라.

    마치며

    이 포스팅에 추가된 모든 사진들은 워드프레스에서 업로드한 사진이 아니다. 전부 플리커에 사진을 올려서 워드프레스에 추가했다. 이런 방식을 이용하면 워드프레스를 계속 무료 회원으로 이용하면서 사진을 많이 올릴 수 있다.

    구글포토도 이미 사진을 추가로 올리려면 추가용량을 구입해야 되는 것으로 기억한다. Flickr의 경우 무료회원은 사진이나 동영상을 용량 상관없이 1000개까지 무료이다. 물론 그 이상 업로드하려면 돈을 내고 써야된다. (여기 참고)

    세상에 공짜는 없다. 얘네들도 돈은 벌어야 되니까 이해한다.

  • 싱가포르 Lucid 커피, 스콘과 커피가 맛있는 곳

    싱가포르 Lucid 커피, 스콘과 커피가 맛있는 곳

    싱가포르 현지인 친구를 만나고 왔다. 커피를 굉장히 좋아하는 친구인데 오늘 같이 간 장소가 너무 좋아서 포스팅한다. 참고로 여기 거리자체가 카페 및 베이커리 거리이다. 꼭 이 커피숍이 아니더라도 근처에 맛있어 보이는 카페와 빵집이 많았다.

    비가 너무 많이 온 하루.

    카페 내부

    메뉴

    디저트

    여기는 스콘이 유명하다!

    스콘을 시켰다. 같이 나오는 크림이랑 먹으면 진짜 맛있음
    아이스 라떼
    친구들이랑 이거저거 많이 시켜봤다. 다 맛있었음
    이것도 맛있었던 디저트

    위치

    https://goo.gl/maps/iNUwkSWMN9auUws47

    싱가포르는 위치 찾을 때 우편번호 6자리만 기억하면 된다. 여기는 우편번호 209208 이다. 구글맵도 좋지만 교통편 검색할 때는 City Mapper라는 앱을 강추한다.

    커피와 빵을 좋아하면 무조건 이 지역을 가보도록 추천한다.

  • Why Our iOS Team Now Allows Storyboard – Less Code, Faster Compile, Better Preview

    Why Our iOS Team Now Allows Storyboard – Less Code, Faster Compile, Better Preview

    Our UI creation rule was creating a UI programmatically. But recently, we changed it.

    Now our iOS team can create UI depending on their preferred approaches.

    The reason is that there are really good things if you use Storyboard

    • Less Code
    • Compile Time
    • Preview
    • Layout warnings

    Among them, the main reason for making a decision is Compile time.

    Compile Time: Swift vs Storyboard

    Imagine if you need to change the spacing in UIStackView.

    The left one is programmatic UI. If you change just one line of code then the swift compiler detects source file changes and will compile it. It may take more time if the source file dependent on other source files.

    The right one is used Storyboard. If you change the spacing in StackView on Storyboard then ibtool compile a storyboard into the multiple nibs(stands for NextStep Interface Build file) at compile time.

    Results: Storyboard compile-time 6.5x faster than Swift

    • Swift: 46.8 seconds
    • Storyboard: 7.2 seconds

    As you can see from the results, compile-time when using the storyboard is much faster than swift file changes.

    WWDC2018, Behind the Scenes of the Xcode Build Process

    If you want to know ibtool’s compile options then check man ibtool in /Applications/Xcode.app/Contents/Developer/usr/bin.

    /Applications/Xcode.app/Contents/Developer/usr/bin/
    You can check the Interface Builder document.

    Although there were pros we’ve had some concerns about using Storyboard like below

    • PR Review
    • Conflicts Storyboard/Xib files

    To address these concerns, we need to know about the xib(stands for XML Interface Builder) format.

    xib format

    Storyboard/Xib is a XML format. It means that Human Readable format. I sometimes heard that from iOS Engineers Storyboard/Xib files are hard to review. It’s true compared to reviewing swift code.

    But once familiar with that format You may feel It is easy to review it. Because It looks like HTML format.

    The storyboard is an XML document.

    The numbers above the image mean like below

    1. toolVersion

    It means Interface builder tool’s version. It may be changed when you update Xcode. I highly recommend all team members use the latest Xcode version to avoid merge conflicts.

    1. initialViewController

    It indicates the initial view controller’s object id in Storyboard. So If you called an instantiateInitialViewController() then It returns that viewController.

    1. device

    You can use it to preview the layout on Storyboard. Anyone can change it but after checking the layout then I recommend resetting it as your team’s default device (e.g. iPhone X) to avoid merge conflicts.

    1. scenes

    A storyboard can have multiple scenes. A Scene has a ViewController.

    1. segue

    segue is a connection between ViewControllers. It has an id and a destination’s id. If the destination’s id has changed then we need to review it carefully. If there is no ViewController that has the destination’s id then It might be caused a crash at runtime.

    PR review

    I’ll show two examples.

    • Minor changes
    • Major changes (e.g. Layout, objectId, segue, etc)

    Minor Changes

    These changes normally don’t affect your UI. So You can easily review and approve it. It should be fine.

    • toolsVersion / plugin version can be changed automatically when you use a different Xcode version and edited the Interface Builder.
    • rect can be changed when you change the device or move a subview. These small changes should be fine because It uses autolayout.
    • propertyAccessControl(Locking View) is controlled by the developer. I’ll explain it next section.

    Major Changes

    Major Changes will affect layout issues. I’ll show you some examples below.

    Embedded in UIStackView

    If you embedded labels in UIStackView then you have to double-check label’s id is in stackView or not.

    Layout Constraint Issue

    An ambiguous=”YES” indicates us there is Layout Issue! So It should be fixed.

    Pull Request Template

    I highly recommend adding a screenshot of the layout in PR. To encourage your teammate to add a screenshot, set a Pull Request Template.

    It is our team’s template.

    Description
    ===

    Screens
    ---

    Links (JIRA / Confluence)
    ---

    Related PR
    ---

    Check Lists
    ---
    - [x] multiple devices
    - [x] confirmed by developer
    Add a pull_request_template.md in .github/ path

    How to avoid merge conflicts?

    File changes cause merge conflicts. You can avoid it by dealing with file changes carefully.

    By following this rule, merge conflicts are avoided as much as possible.

    • use the latest Xcode.
    • don’t commit the changes if you are not working on that View
    • locking Views in Storyboard and XIB Files you are working on

    If your team is working on the same Storyboard, I highly recommend locking views to prevent unwanted changes.

    Show the Identity Inspector -> Lock

    You can set a lock on any UI Components(Whole Storyboard, UIViewController, UIView, Segue, any UI-related objects like a Constraint) you will be working on. As I mentioned above, propertyAccessControl will be added to the storyboard/xib file when you set a lock.

    UIViewController is locked

    Lock Image will be shown when you try to change on Locking View.

    Conclusion

    There are cons and pros to using Storyboard/Xib. Productivity is also different depending on the iOS developer’s preferred UI creation approach. But We made a decision to use both. Because we can save compile-time and found a good solution to resolve concerns for using it.

    Also, It is a first-party tool. Apple has developed the IB tool over 34 years. And It is being actively updated come with Xcode.

    • 34 Years Ago In 1988, Interface Builder was released by Apple
    • 15 Years Ago In 2007, XML Interface Builder was released by Apple
    • 11 Years Ago In 2011, Storyboard was introduced at WWDC 2011

    I hope our decision helps you decide to use Storyboard/Xib in your team!

    References

    Locking Views in Storyboard and XIB Files

    What’s New in Storyboards

    Build interfaces with style

    Implementing UI Designs in Interface Builder

    Auto Layout Techniques in Interface Builder

    Behind the Scenes of the Xcode Build Process

  • 스쿠트(Scoot) 항공 탑승기, 싱가포르에서 발리가기

    스쿠트(Scoot) 항공 탑승기, 싱가포르에서 발리가기

    스쿠트 항공을 통해 발리를 가봤다.

    몇 가지 팁이 있어서 후기를 남겨본다.

    창이공항 도착 시간 및 수하물 빨리 받는 방법

    수하물이 있다면 비행기 출발 2시간전에 도착해서 미리 붙이는 것이 좋다. 왜냐면 스쿠트 항공은 저가항공이기 때문에 수하물을 클래스 별로 분류하지 않고 선착순으로 실어나르기 때문이다.

    2시간전에 창이공항 도착했을 때 체크인 하는 사람들이 거의 없었고 발리에 도착했을 때도 우리 수하물이 굉장히 빨리 나왔다.

    수하물은 40불

    다른 항공사와는 달리 수하물을 붙이고 싶다면 40불을 내야된다.

    기내 서비스

    항공권만 구매했다면 기본 서비스는 없다. 심지어 물도 안주므로 비행기 탑승 후 카드결제로 사먹어야 된다. 혹시 식사가 하고 싶다면 사전에 미리 온라인으로 추가해야된다.

    비행시간

    비행기가 이륙하고 착륙하는 시간만 계산해봤는데 거의 2시간 가량 걸렸다. 생각보다 발리는 싱가포르와 아주 가까운 곳이었다.

    항공기 내부

    좌우 각각 3개의 시트가 붙어있다.
    잠깐 잠들었다 깨보니 벌써 발리 섬이 보인다.

    발리공항 도착 (DPS)

    발리 공항에 도착했다.

    이상으로 스쿠트 항공 후기를 마친다.

  • 콜드브루 라떼가 맛있는 카페, Wonder Brew 가든파이브 현대시티몰 2층

    콜드브루 라떼가 맛있는 카페, Wonder Brew 가든파이브 현대시티몰 2층

    오랜만에 콜드브루 라떼를 주문해봤다. 나는 커피중에서도 특히 라떼에 댜해서 입맛이 까다로운 편인데 여기는 너무 맛있어서 바로 포스팅 한다.

    내가 주문한 콜드브루 라떼

    보통 콜드브루 라떼는 일반 라떼에 비해 약간 우유맛이 더 강하고 커피우유처럼 느껴지는 경우가 많다.

    그런데 여기는 콜드브루만의 커피 맛과 우유가 상당히 잘 조합된 아주 맛있는 라떼다.

    오랜만에 콜드브루 라떼를 시켜먹고 정말 맛있게 마셨다. 강추!

    위치

    송파구 가든파이브 현대시티 라이프몰 지하 1층에 있다

  • 싱가포르 새우국수 강추, Seletar mall, Zhen Jie Prown Noodle

    싱가포르 새우국수 강추, Seletar mall, Zhen Jie Prown Noodle

    Seletar 몰에 Singapura Heritage에 위치한 새우국수 전문점이다.

    인터넷에서 많이 언급되는 블랑코 새우국수집이랑 여기 모두 집에서 걸어갈 수 있는 곳이라 자주 먹어봤다.

    개인적으론 Zhen Jie Prown Noodle이 훨씬 깔끔하고 국물도 진하고 너무 맛있었다.

    특히 새우가 블랑코에 비해 먹기 쉽게 손질되어있었다. (머리와 꼬리 부분만 제외하고 몸통 전체가 손질되어있어서 먹기가 좋았다)

    반면 블랑코는 새우를 가로로 반을 갈라놓아서 빼서 먹기가 불편했다

    셀터몰 싱가푸라 해리티지 공간에 입점해있다
    깔끔한 푸드코트 내부
    국물이 진짜 진하다
    이건 건면인데 갠적으로 이게 더 맛있었다. 그리고 새우육수도 따로 줘서 좋았음

    재방문 의사 100프로 맛집이다

    위치

    Singapura Heritage
    https://maps.app.goo.gl/MBCMTeTtWvqh8Tmz5?g_st=ic

    싱가포르 중심지에서는 조금 먼 곳이다. 아마도 여기도 체인점이라 여러군데가 있을 것 같은데 검색해보니 다른 지점은 여기만큼 깔금하지 않은 것 같다. 이 지역에 볼일이 있다면 셀터몰 3층에 위치한 지점 방문해보길 추천한다

  • iOS 개발자 해외취업 취준생을 위한 온라인 멘토링 – 면접 준비 상담

    iOS 개발자 해외취업 취준생을 위한 온라인 멘토링 – 면접 준비 상담

    요즘 해외취업이나 개발자를 희망하는 취준생을 많이 본다.

    나도 약간 맨땅에서 헤딩하는 느낌으로 여기까지 왔고 그 과정에서 어떻게 준비하고 어떻게 하면 면접을 잘 볼 수 있는지 고민이 많았다.

    그래서 혹시나 관심있는 취준생이 있다면 온라인 멘토링(무료아님, 1시간 단위로 결제)을 시작해보려고 한다.

    나의 경력을 간단히 요약해보자면

    • 학사 컴퓨터공학, 석사 컴퓨터과학 졸업
    • 삼성전자 6년 근무 (주로 UX팀에서 프로토타입 개발)
    • 네카라 중 한 곳 3년 근무 (시니어 iOS 개발)
    • 21년도부터 싱가포르에서 근무 중 (시니어 iOS 개발 및 iOS 팀 리딩 중)
    • 30번 이상의 iOS 지원자 인터뷰 경험

    내가 해줄 수 있는 멘토링

    • 코드리뷰
    • 이력서 피드백 (이력서 작성해주는 것 아님)
    • 과제전형 준비 방법
    • iOS 면접시 알아야 될 중요한 개념 (멀티쓰레드 등등)
    • 모바일 시스템 디자인 인터뷰 준비
    • 해외취업 준비 방법
    • 반복해서 탈락하는 취준생을 위한 원인분석 및 피드백

    멘토링 희망할 경우

    • 이메일로 멘토링 문의 (shawn@shawnbaek.com)
    • 구글 미팅 혹은 줌으로 1시간 단위로 진행 (선결제 후 일정 정하고 멘토링 진행)

  • 싱가포르 맥리치 MacRitche 공원 (야생 원숭이와 카약을 탈 수 있는 곳)

    싱가포르 맥리치 MacRitche 공원 (야생 원숭이와 카약을 탈 수 있는 곳)

    싱가포르 친구가 추천해준 MatRitche 공원을 다녀왔다. 처음으로 공원에서 야생 원숭이를 봤는데 너무 신기했다.

    MacRitche 공원

    싱가포르에서 여러 공원을 이미 다녀왔기 때문에 사실 별 기대를 안했다. 사진으로 봤을때도 그냥 호수 정도 있는거 같아서 갈까 말까 고민하다가 간 공원이다.

    결론부터 말하자면 여기 와보길 잘했다!

    그래 여기까지는 그냥 평범한 공원의 풍경이었다.

    야생 원숭이

    일단 공원 입구를 중심으로 왼쪽 방향으로 가보자. (오른쪽 방향에는 야생 원숭이 한마리도 못봄)

    정말 야생 원숭이가 엄청 많았다. 뭐 사람을 크게 무서워하지도 않고 신경도 안쓰는 듯. 원숭이는 동물원에서나 보던 동물인데 ㅎㅎ

    원숭이도 원숭이지만 호수가 생각보다 멋있었다. 사람들이 카약을 타고 강가에서 놀고있다

    카약을 타고 싶다면?

    자 원숭이를 보기위해 왼쪽 방향으로 왔다면 이제는 반대 방향으로 가보자.

    가격이 1시간에 15불 정도이다. 괜찮은 가격이다

    마치며

    기대를 안하고 간 곳이지만 생각보다 너무 괜찮은 공원이었다. 사람이 많이 붐비지도 않았고 한적했다. 특히 사진 찍기 좋은 장소였다.

    참고로 카페나 레스토랑을 가고 싶다면 공원 입구 근처에 있는 버스 정류장으로 가라.

    Upp Thomson Road 정류장에서 내리면 레스토랑과 꽤 괜찮은 카페가 있다. 다음에 따로 포스팅해서 링크 걸 예정.