{"id":3151,"date":"2016-08-02T18:26:16","date_gmt":"2016-08-02T18:26:16","guid":{"rendered":"http:\/\/www.ckl.io\/?p=3151"},"modified":"2022-07-01T17:55:58","modified_gmt":"2022-07-01T17:55:58","slug":"how-i-boosted-my-ios-dev-with-swift-libraries","status":"publish","type":"post","link":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/","title":{"rendered":"How I boosted my iOS development with Swift Libraries"},"content":{"rendered":"<p>As an iOS developer working at&nbsp;a startup focused in collaborative development, I&#8217;ve been involved in several projects so far, and most of them share common tasks such as downloading and caching images, performing network requests, and building Auto Layout views.<\/p>\n<p>At first, I had a flow that I thought was good enough to accomplish these basic tasks&nbsp;(or any other, for that matter):<\/p>\n<ol>\n<li>Try to implement using the iOS SDK<\/li>\n<li>Get&nbsp;stuck at a problem that doesn&#8217;t have a straightforward solution<\/li>\n<li>Look up&nbsp;the solution on StackOverflow and implement it<\/li>\n<li>Move on to the next task<\/li>\n<\/ol>\n<p>That&nbsp;seemed&nbsp;like a good flow at first, but&nbsp;got a bit tiresome in the long run \u2013 after all, nobody likes to hack for a living.<\/p>\n<p><!--more--><\/p>\n<p>This all changed when I started reading a couple of widely followed news feeds such as <a href=\"https:\/\/iosdevweekly.com\/issues\/260?#start\">iOS Dev Weekly<\/a>, and also checking <a href=\"https:\/\/github.com\/trending\/swift?since=monthly\">GitHub Trending Repositories<\/a>. Looking at the these sources regularly, I realized that most of the basic tasks I need to accomplish on a daily basis have already been solved by the open-source community \u2013 and are available in the form of libraries.<\/p>\n<p>Overall, these tools&nbsp;boosted&nbsp;my development by reducing boilerplate and also by addressing my problems better than I (or anyone) could&nbsp;in almost no time&nbsp;\u2013 which is a key factor in any startup business.&nbsp;Don&#8217;t get me wrong here \u2013 I&#8217;m not assuming you&#8217;re a lousy dev, but&nbsp;using tools&nbsp;that were validated by a bunch of&nbsp;people may come in really handy.<\/p>\n<p>I&#8217;ve put together some of my favorite Swift libraries that I use on a daily basis to solve basic problems.<\/p>\n<h2>1. Downloading and Caching Images<\/h2>\n<p>Images are present in almost all apps I&#8217;ve seen so far, even if it&#8217;s just a profile picture in the settings screen. Combining NSURLSession and NSURLCache to respectively download and cache the images can definitely do the job, but why bother with all that if you&#8217;re able to use <a href=\"https:\/\/github.com\/onevcat\/Kingfisher\">Kingfisher<\/a> (a Swift-flavoured <a href=\"https:\/\/github.com\/rs\/SDWebImage\">SDWebImage<\/a>) and set the image of your ImageView&nbsp;within a single line? Check this out:<\/p>\n<pre><code class=\"language-swift\">imageView.kf_setImageWithURL(NSURL(string: \"http:\/\/your_image_url.png\")!)<\/code><\/pre>\n<p>It also provides simple ways to&nbsp;define placeholder images, completion blocks&nbsp;and even check the&nbsp;download progress.<\/p>\n<h2>2. Performing Network Requests<\/h2>\n<p>Games&nbsp;storing user content, news feeds providing up-to-date content,&nbsp;chat apps interfacing the message exchange and so much more \u2013 nowadays it&#8217;s nearly impossible to imagine an app that does not&nbsp;communicate with a server through an HTTP(S) API.&nbsp;If you ever&nbsp;had tons of headaches to fetch and parse data from an API, here is the solution for you my friend:&nbsp;<a href=\"https:\/\/github.com\/Alamofire\/Alamofire\">Alamofire,<\/a>&nbsp;a Swift version for <a href=\"https:\/\/github.com\/AFNetworking\/AFNetworking\">AFNetworking<\/a>, developed and maintained by the same team.<\/p>\n<pre><code class=\"language-swift\">Alamofire.request(.GET, \"https:\/\/httpbin.org\/get\", parameters: [\"foo\": \"bar\"])<\/code><code class=\"language-swift\">\n    .validate()\n    .responseJSON { response in\n&nbsp;&nbsp;&nbsp;     print(response.request) &nbsp;\/\/ original URL request\n&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;print(response.response) \/\/ URL response\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;print(response.data) &nbsp;&nbsp;&nbsp;&nbsp;\/\/ server data\n&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;print(response.result) &nbsp;&nbsp;\/\/ result of response serialization\n&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;if let JSON = response.result.value {\n&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(\"JSON: \\(JSON)\")\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;}\n    }\n<\/code><\/pre>\n<p>It does all sorts of things, from uploading files to response validation,&nbsp;in a very elegant way.<\/p>\n<h2>3. Building Auto Layout Views<\/h2>\n<p>If you&nbsp;have ever&nbsp;had to work with NSLayoutConstraint (or worse <a href=\"https:\/\/developer.apple.com\/library\/ios\/documentation\/UserExperience\/Conceptual\/AutolayoutPG\/VisualFormatLanguage.html\">VFL<\/a>&nbsp;o.O) you know how painful it can be to implement even the most simple views programmatically. After years of complaints from the community,&nbsp;Apple has finally provided&nbsp;a <a href=\"https:\/\/developer.apple.com\/library\/ios\/documentation\/AppKit\/Reference\/NSLayoutAnchor_ClassReference\/\">fluent Auto Layout&nbsp;API<\/a> for iOS9 and up, but if your app still has&nbsp;to support iOS8,&nbsp;<a href=\"https:\/\/github.com\/SnapKit\/SnapKit\">SnapKit<\/a> (a Swift version of <a href=\"https:\/\/github.com\/SnapKit\/Masonry\">Masonry<\/a>, developed and maintained by the same team) offers the best solution out there.<\/p>\n<pre><code class=\"language-swift\">import SnapKit\nclass MyViewController: UIViewController {\n&nbsp;&nbsp;&nbsp;lazy var box = UIView()\n&nbsp;&nbsp;&nbsp;override func viewDidLoad() {\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super.viewDidLoad()\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.view.addSubview(box)\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;box.snp_makeConstraints { make in\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;make.width.height.equalTo(50)\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;make.center.equalTo(self.view)\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}\n&nbsp;&nbsp;&nbsp;}\n}<\/code><\/pre>\n<h2>The Shift to Swift<\/h2>\n<p>If you pay attention to the most famous libraries out there, you&#8217;ll realize how&nbsp;the community is moving from Objective-C to Swift more and more every day.&nbsp;Most of the big companies are moving on that direction as well \u2013 a great example is Facebook, which already has a beta version of its <a href=\"https:\/\/github.com\/facebook\/facebook-sdk-swift\">Facebook SDK in Swift<\/a>.<\/p>\n<p>Another&nbsp;boost to this trend&nbsp;lies on&nbsp;Apple working on its own alternative to Cocoapods and Carthage, the <a href=\"https:\/\/github.com\/apple\/swift-package-manager\">Swift Package Manager<\/a>. According to Ben Morrow in <a href=\"https:\/\/www.raywenderlich.com\/135655\/whats-new-swift-3\">What&#8217;s New In Swift 3<\/a>, it will be the first&nbsp;release to include the SPM. There are several libraries that already support it and we&#8217;ll likely start to see even more in the coming months.<\/p>\n<p>Whether you decide to keep your Objective-C or move on to Swift,&nbsp;I hope&nbsp;these libraries help you as much as they have helped me&nbsp;so far. Agree, disagree or have any suggestions?&nbsp;Let me know&nbsp;your thoughts!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As an iOS developer working at&nbsp;a startup focused in collaborative development, I&#8217;ve been involved in several projects so far, and most of them share common tasks such as downloading and caching images, performing network requests, and building Auto Layout views. At first, I had a flow that I thought was good enough to accomplish these [&hellip;]<\/p>\n","protected":false},"author":65,"featured_media":3181,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[432,7],"tags":[21,299],"class_list":["post-3151","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-engineering","category-opinion","tag-tag-ios","tag-tag-mobile-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How I boosted my iOS development with Swift Libraries<\/title>\n<meta name=\"description\" content=\"I&#039;ve put together a collection of Swift libraries that can help you ramp up your iOS development and let you focus on the core business.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How I boosted my iOS development with Swift Libraries\" \/>\n<meta property=\"og:description\" content=\"I&#039;ve put together a collection of Swift libraries that can help you ramp up your iOS development and let you focus on the core business.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/\" \/>\n<meta property=\"og:site_name\" content=\"Cheesecake Labs\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/cheesecakelabs\" \/>\n<meta property=\"article:published_time\" content=\"2016-08-02T18:26:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-07-01T17:55:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Cheesecake Labs\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@cheesecakelabs\" \/>\n<meta name=\"twitter:site\" content=\"@cheesecakelabs\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/\"},\"author\":{\"name\":\"Bruno Guerios\"},\"headline\":\"How I boosted my iOS development with Swift Libraries\",\"datePublished\":\"2016-08-02T18:26:16+00:00\",\"dateModified\":\"2022-07-01T17:55:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/\"},\"wordCount\":758,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg\",\"keywords\":[\"iOS\",\"mobile development\"],\"articleSection\":[\"Engineering\",\"Opinion\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/\",\"url\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/\",\"name\":\"How I boosted my iOS development with Swift Libraries\",\"isPartOf\":{\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg\",\"datePublished\":\"2016-08-02T18:26:16+00:00\",\"dateModified\":\"2022-07-01T17:55:58+00:00\",\"author\":{\"@type\":\"person\",\"name\":\"Bruno Guerios\"},\"description\":\"I've put together a collection of Swift libraries that can help you ramp up your iOS development and let you focus on the core business.\",\"breadcrumb\":{\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage\",\"url\":\"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg\",\"contentUrl\":\"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg\",\"width\":2000,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cheesecakelabs.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How I boosted my iOS development with Swift Libraries\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/#website\",\"url\":\"https:\/\/cheesecakelabs.com\/blog\/\",\"name\":\"Cheesecake Labs\",\"description\":\"Nearshore outsourcing company for Web and Mobile design and engineering services, and staff augmentation for startups and enterprises..\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cheesecakelabs.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"name\":\"Bruno Guerios\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cheesecakelabs.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/11\/bruno-300x300.jpg\",\"contentUrl\":\"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/11\/bruno-300x300.jpg\",\"caption\":\"Bruno Guerios\"},\"description\":\"10 years of experience in Marketing and Sales in the Technology sector. My main purpose is help, support and structure efficient operations and also develop independent and multidisciplinary teams.\",\"url\":\"https:\/\/cheesecakelabs.com\/blog\/autor\/brunoguerios\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How I boosted my iOS development with Swift Libraries","description":"I've put together a collection of Swift libraries that can help you ramp up your iOS development and let you focus on the core business.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/","og_locale":"en_US","og_type":"article","og_title":"How I boosted my iOS development with Swift Libraries","og_description":"I've put together a collection of Swift libraries that can help you ramp up your iOS development and let you focus on the core business.","og_url":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/","og_site_name":"Cheesecake Labs","article_publisher":"https:\/\/www.facebook.com\/cheesecakelabs","article_published_time":"2016-08-02T18:26:16+00:00","article_modified_time":"2022-07-01T17:55:58+00:00","og_image":[{"width":2000,"height":720,"url":"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg","type":"image\/jpeg"}],"author":"Cheesecake Labs","twitter_card":"summary_large_image","twitter_creator":"@cheesecakelabs","twitter_site":"@cheesecakelabs","twitter_misc":{"Written by":null,"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#article","isPartOf":{"@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/"},"author":{"name":"Bruno Guerios"},"headline":"How I boosted my iOS development with Swift Libraries","datePublished":"2016-08-02T18:26:16+00:00","dateModified":"2022-07-01T17:55:58+00:00","mainEntityOfPage":{"@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/"},"wordCount":758,"commentCount":0,"image":{"@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage"},"thumbnailUrl":"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg","keywords":["iOS","mobile development"],"articleSection":["Engineering","Opinion"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/","url":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/","name":"How I boosted my iOS development with Swift Libraries","isPartOf":{"@id":"https:\/\/cheesecakelabs.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage"},"image":{"@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage"},"thumbnailUrl":"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg","datePublished":"2016-08-02T18:26:16+00:00","dateModified":"2022-07-01T17:55:58+00:00","author":{"@type":"person","name":"Bruno Guerios"},"description":"I've put together a collection of Swift libraries that can help you ramp up your iOS development and let you focus on the core business.","breadcrumb":{"@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#primaryimage","url":"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg","contentUrl":"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/07\/Banner_ioslibraries4.jpg","width":2000,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/cheesecakelabs.com\/blog\/how-i-boosted-my-ios-dev-with-swift-libraries\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cheesecakelabs.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How I boosted my iOS development with Swift Libraries"}]},{"@type":"WebSite","@id":"https:\/\/cheesecakelabs.com\/blog\/#website","url":"https:\/\/cheesecakelabs.com\/blog\/","name":"Cheesecake Labs","description":"Nearshore outsourcing company for Web and Mobile design and engineering services, and staff augmentation for startups and enterprises..","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cheesecakelabs.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","name":"Bruno Guerios","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cheesecakelabs.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/11\/bruno-300x300.jpg","contentUrl":"https:\/\/ckl-website-static.s3.amazonaws.com\/wp-content\/uploads\/2016\/11\/bruno-300x300.jpg","caption":"Bruno Guerios"},"description":"10 years of experience in Marketing and Sales in the Technology sector. My main purpose is help, support and structure efficient operations and also develop independent and multidisciplinary teams.","url":"https:\/\/cheesecakelabs.com\/blog\/autor\/brunoguerios\/"}]}},"_links":{"self":[{"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/posts\/3151","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/users\/65"}],"replies":[{"embeddable":true,"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/comments?post=3151"}],"version-history":[{"count":1,"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/posts\/3151\/revisions"}],"predecessor-version":[{"id":10335,"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/posts\/3151\/revisions\/10335"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/media\/3181"}],"wp:attachment":[{"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/media?parent=3151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/categories?post=3151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cheesecakelabs.com\/blog\/wp-json\/wp\/v2\/tags?post=3151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}