Idelfonso Gutierrez

Software developer 👨🏻‍💻 iOS && data applications. Developing, testing, publishing and leading software applications mostly

Menú ☕️

Mobile Applications

Stranded

Background:

ORD 🛫 MAD 🛬 _ETD 14:00 _

Waiting for your flight? How to start a conversation with someone? Maybe a dance… In order to dance you only need a smile and good energy Math ➗ is international known. Music 🎼 is international heard. Dance, sculpture, literature, design, cuisine are different forms of expressions denoted as Arts which are internally perform.

Social interaction is a human need

YES! It’s something we get excited for and even further when we meet, travel or try something new. People can connect with each other despite the different languages, origins, cultures.

The Solution:

Stranded 🙂 brings people together at international places (airports) in different time zones! Allowing them to discover something new and exciting… and possibly a new friend.

tech: Combine, SwiftUI, APNS, database


mmMapp

The ability to keep learning is an invaluable skill

Pitch:

But most importantly! How happy… or how stress are you? ⛱ 🤯

The Solution: Coming soon


YellowPepper Talks

Introduction to Firebase Database, IAM, and backend for the front end developers.

I talked about how to start with Firebase, Realtime Database, and its rules. Also about Storage Database and it rules

Along with it, I developed a small sample iOS project using Swift to send text and image nodes, how they are shown in the firebase console, and which methods I use to retrieve them in the client

tech: Swift, UIKit, AutoLayout, Firebase Realtime DB

GitHub


Tubmlr Client

Created an iOS client in order to search blog users in Tumblr, follow users, and post text blogs.

tech: Tumblr API, UIKit

GitHub


On the Map

“On The Map” app allows users to share their location and a URL with their fellow students

tech: MapKit, Parse, Udacity API

GitHub


Virtual Tourist

Wondering what kind of pictures have people taken in a particular place around the world?

Think about Virtual Tourist before Instagram search feature using Flicker

tech Flicker API, MapkKit, UIKit

GitHub


back to menu


Databases

Data Lakes 🚤 with Apache Spark + EMR Cluster

You can take a trip to a polluted lake or clean lake and how the water looks, taste, or where it comes from matters.

Data lakes is a new analogy to what Data Warehouse was till not too long ago. We are still using the same hardware for Data lakes, but with new tools which makes possible to cover more ground. In my previous project STAR vs 3NF 🥊 SCHEMA I prepared the data to be ready for use by BI applications with the OLAP cubes. It’s a structure that has been validated and vetted through several implementations and successful cases. When I learned about Data lakes: the tools, the language, Serverless (Python, learning Scala) I felt that I save a bit of automation by looking into it. Not to get me wrong, like any other technology it’s flexible, there are pros and cons, budget, analysis of your workload, and team work.

Data is the new oil 🛢 🤑 and everybody knows it but not really

As I mention, automation, but not really. Instead of creating tables and doing the ETL dance, lets do the ELT 💃 dance. In which, we would infer the schema of “table” by setting the following:

df = spark.read.csv('s3a://.../file.csv', sep=';', inferSchema=True, header=True)

We will perform our transformation and have them save in S3 for which our BI apps could connect to or we could attached to the cluster, but they are expensive 💰. S3 it’s cheap and it doesnt get shutdown.

Another step is the Schema-on-read for this process to be possible, and if you catch that there is a lot of steps.

There is some learning that I’m exited to be touching in the near future: Data Scientist, ML, cloud dev, data streaming

Github

tech: AWS EMR (Spark+Hadoop), Python, Notebooks


Data Ware🏡 with AWS Redshift

Why would we want to use re-create our table structures for Analytical Procedures?

It happens that performance is much better, we can do fewer joins and access the same information. We still would like to have our 3NF schema for application purposes. Besides re-creating our tables, these can be improve… by a lot more with the following!

In the first point, I’m talking about creating an ETL process to load this data, but of course there is some setup that needs to be done

There is an overcrossing between Infra DevOps 🛠 and Data Engineers 💾

For this project I utilize AWS web services like redshift, s3 storage buckets, user roles, policies, and cloud watch

The idea is how can we prepare data to be use by Business Intelligence applications like Tableu or even Jupyternotebook! 👍 In order to help the business see an overview of the data in a diagram of what important features of the product their customers might be using. Mainly, how can we improve the performance of these OLAP and OLTP transactions. For that, we use the combination of star schema tables, we build a strategy for a distributed data system, and do grouping for all the features thanks to REDSHIFT.

Github

tech: AWS services*, Python, Jupyter


Creating an ETL process with Apache Cassandra

Handling BIG DATA and storage now a days is no just feasible, it’s a must.

import pandas
import cassandra

Losing customer it’s not an option. Today in the world we have a ton of devices that are gathering and sending data. The benefit of using a document store database #NoSQL, is that developers don’t need to maintain and/or adjust entities, migrations and changes on existing products. Companies and product moves in an agile environment, where requirements are constantly changing; NoSQL allows us to spin these requirements in a quick manner.

The Business Case 💼

The following application establishes the following case where we have deploy a music app and its collecting data which it’s the store to a local text file. From that we known which songs does the user listens to and which membership they are on (at a higher level).

// "Some of the largest production deployments include Apple's, with over 75,000 nodes storing over 10 PB of data, Netflix (2,500 nodes, 420 TB, over 1 trillion requests per day), Chinese search engine Easou (270 nodes, 300 TB, over 800 million requests per day), and eBay (over 100 nodes, 250 TB)." https://cassandra.apache.org/

My job was to extract transform and load this data into the system where business teams could bring their requirements and collect solutions from the data.

🔗 Jupyter Notebook ETL Process

Github

tech: Apache Cassandra, Python, Pandas


Data Modeling with PostgreSQL

cur.execute("DROP DATABASE IF EXISTS ...")

Executing the basic CRUD commands is nothing new when it comes to building a system. A well-thought system it’s very agnostic, and concepts are transferable within different lower level products. Some of the most popular RDBMS involve PostgreSQL, OracleSQL, MySQL. But where does the data comes from? How often does the data changes? How many files do we have, and how often we get new ones? Can we blame IoT 🛰 devices?

To the infinity and beyond… - Buzz Lightyear 1995

In the following application are given directory paths of where the client-side system is storing data files based on a music application product. I analyzed the data, build its entities and form the basic link between them. The analytics team is particularly interested in understanding what songs users are listening to

Github

tech: PostgreSQL, Python, Pandas


Hero World

Creating a test case for a new park for The Walt Disney Company in order to track schedules and budgeting for the construction of all the projects.

Our dev team was able to implement a database using normalization, which helps identifies the identities inside the projects. We developed a process of Table Creation, Views, Stored Procedures, Triggers. During the project we learned how the activity relates to a project, how a project can have many employees, and how a firm can own many employees. This is done using the concept of a relational database.

tech: MySQL*

GitHub


back to menu


Miscellaneous

Lambdas, Closures, Callbacks….. the famous iOS completionHandler argument label

Many iOS developers don’t realize at the beginning that they are actually using a programming language with Functional Paradigm and Principles. The Swift language became really popular thanks to iOS applications. Today, the language does not only help builds applications across an array of customer-facing hardware (iOS, WatchOS, iPadOS, CarPlay) but also enterprise-level and research level as of backend applications and machine learning models respectively. Most recently I saw a microcontroller dev kit for people to start building projects that exist with Raspberry Pi but with Swift and it’s own IDE

“a prototype is worth a 1000 meetings”

Many people say: “well…. its just a Hello World program” or “it lacks the vote from an enterprise point of view” To them I must say there is not an official council who approves or disapproves what technology lives up to the standards. And newer technology aims to address the issues and lack of current technology, how far we can push it, it’s only up to us; developers to run with it an see what we like.

Thank you Fabbian Fett for given us Swift AWS Lambda

GitHub


Writing BDD + TDD in my current projects. (Open-source software)

No method is more effective than a good example. - Ingvar Kamprad, IKEA Founder

The Problem

A developer could write the following below. But this is missing some context, and only developers could! be able to understand what is the system is doing.

func testSystem_whenReset_isInStarted() {
 sut.setToInProgress()

 sut.restart()

 XCTAssertEqual(sut.state, .blank)
}

A different approach: Give me an example

Given the application is "in progress"
When a user "restarts" the application
Then the application will set to "default"
func Given("the application is [regex]") { state in
 sut.set(state)
}

func When("a user [regex] the application") { action in
 sut.perform(action)
}

func Then("the application will set to [regex]") { expected in
 XCTAssertEqual(expected, sut.state)
}

The result out of it is that developers can make a set of reusable tests and stakeholders, product owners, QA tester can expand the tests into every state of the system.

Developers only need to keep following their TDD approach.


Display vCard

The Problem:

Do you have a business card? it probably has a cool design 📇

They are useful when you need to leave in a rush

There is an individual in the middle, or “man in the middle”

manual work is prompt to error

The Solution:

Note: also use “Share sheet” to send it using AirDrop, not too many users allow airdrop from everyone

tech: Siri shortcut


back to menu


Experience

Enterprise Mobility Developer | Ulta Beauty | Chicago, U.S. | Feb. 2020 - Present


iOS Software Developer | GrowIt! | Chicago, U.S. | Feb. 2018 - Feb. 2020

tools/frameworks/libraries:

Tags: horticulture


Technical Analyst iOS Mobile Developer | Solstice Consulting | Chicago, U.S. | Sept 2017 - Feb 2018

tools/frameworks/libraries:

tags: agriculture


Intern iOS Mobile Developer | YellowPepper | Miami, U.S. | Nov 2016 - May 2017

tools/frameworks/libraries:

tags: financial technology


IT Intern Developer | Martin Digital Group | Miami, U.S. | Jan 2014 - April 2015`

Tags: online marketing

Java II Learning Assistant | Florida International University CIS Department | Miami, U.S. | Dec 2015 - May 2016

tags: education


Clients

Ally’s Flower

Using WordPress and Woocommerce was able to create a simple solution for a small business.

The owner was so glad that she didn’t need the help of a tech-savvy person and that it could easily integrate with the power of Square (POS)

tech: WordPress, CRM, POS

www.allysflower.com


Proendoscopy

Created an iOS application to manage the items in inventory for a medical equipment repair company.

Proendoscopy is a local company in the city of Sunrise, it specializes in the service and repair of medical equipment, mainly endoscopes.

Our dev team was able to quickly identify the main problem in their workflow and inefficiency of procedures in the sales department.

tech: iOS: Objective-C, CoreData, UIKit


Education

Volunteer

Instructor | CoderDojo | Miami, U.S. | Dec 2014 - May 2016

tags: education

Tech stack

Contact Information

status: Billingual dancer from Venezuelan 🇻🇪 in Chicago, IL

📨 idelfonsog2@gmail.com

📞 +1 954 513 9568

💼 Github

📠 @idelfonsoGM

💾 Save Contact as …

Hobbies

Learning

que bueno 🤣🙌🏾 Actitud | Victor Küppers | TEDxAndorralaVella https://t.co/orerUgfhpo via @YouTube

— Idelfonso (@idelfonsoGM) November 22, 2019

Tango

Photograph by Charapin 🙌🏾

Charapin