CTO Lifecycle at Startups

The Chief Technology Officer (CTO) position calls for an operational executive who can make important strategic decisions that impact the competitive position of the company. However, very little research has been done to define the CTO’s responsibilities,  and the skills that the person should bring to the office.

According to Wikipedia: A chief technology officer (CTO), sometimes known as a chief technical officer, is an executive-level position in a company or other entity whose occupant is focused on scientific and technological issues within an organisation.

Understanding this positions is even harder at fast-paced startups as everything changes quickly. Lets analyse the changes about the Responsibilities and Duties of a CTO during the startup lifecycle stages (Seed, Startup, Growth, Established, Expansion and Mature).

Continue reading CTO Lifecycle at Startups

Continuous Delivery: Jenkins and Elastic Beanstalk

Developing a new Web Application is becoming much and much easier everyday. I’m a big fan of solutions like Spring Boot that makes it easy to create stand-alone, Spring based Applications that can you can “just run” and by “just run” I mean this: java -jar app.war

Continuously testing your application is also very easy, Jenkins a well known Continuous Integration system is free and really easy to install: apt-get install jenkins

Scale and Manage resources is now a no-brainer with solutions like Elastic Beanstalk from Amazon Web Services, that automatically handles the deployment, from capacity provisioning, load balancing, auto-scaling to application health monitoring.

But something is missing. How do we connect the dots? How can we automate all the process? How can we have a  Low cost, Ops-Team free and Robust solution? – This post is the simplest guide to show you how to create a: Continuous Delivery Pipeline for a Spring Boot  Web Application deployed in a Elastic Beanstalk container using Jenkins.

Continue reading Continuous Delivery: Jenkins and Elastic Beanstalk

Github project: Link Shortener

I’m still learning and discover some features of Spring Boot. I trully believe that Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that can you can “just run”.

This implementation is a simple rest service with the basic methods: Create, Read, Update and Delete, following the same basics of many services in the internet such as: Google URL Shortener and Bitly.
I’m using a H2 as an in-memory database, Swagger for interface documentation and testing and of course Spring Boot.

All code is available in my Github Account and I have a  Demo running in a t1.micro at AWS.

Continue reading Github project: Link Shortener

First look: Spring Boot and Docker

Everyone has eared that Spring Boot is the faster way to build applications. But, what everyone is trying to find right now is: What is the simplest and faster way to deploy applications?

Amazon Web Services has announced in AWS re:Invent 2014 the new Amazon EC2 Container Service that supports Docker containers and allows you to easily run distributed applications on a managed cluster of Amazon EC2 instances. This have created a lot of buzz around Docker.

Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications, whether on laptops, data center VMs, or the cloud.

The following code sample is to show how to have an Spring Boot application deployed using Docker.

Continue reading First look: Spring Boot and Docker

Maslow’s Hierarchy of Needs of Software Development

If you’ve ever worked in a big corporate company before joining a new small startup you will probably notice that being a Software Developer does not only mean: Code, Test, Push.

Sometimes the reason for startups failure is not the lack of skills within the team, but the impossibility of using those skills.

This post is to share my own journey understanding what can help small teams pushing great value into the company with a small budget by focus in the most important needs in Development and Operations.

Continue reading Maslow’s Hierarchy of Needs of Software Development

Spring MVC without XML configuration

There is a lot of buzz around how Spring Boot is easy to get a new Spring MVC application up and running as quickly as possible. But if you are not a big fan of convention over configuration and you still want to simplify your XML configuration this is the right post for you.

Continue reading Spring MVC without XML configuration

A new Start(up)!

Since February and after leaving Blip.pt, the best company I’ve ever worked so far. I’m working in an ambitious and well-funded start up founded in 2008 in Berlin by Cengiz Kurt called clipkit GmbH.

I want to share what is going on in clipkit GmbH from the Technology point of view.

Continue reading A new Start(up)!

%d bloggers like this: