Interview by Daniel Read
Answers by Gustavo Alvear
This interview with Gustavo Alvear is the first in the developer.* Global Development Series. Each installment in this series will feature a software developer from a different part of the world. Mr. Alvear works in the software development industry in Colombia, South America. He will tell us more about himself in the interview, so keep reading.
Daniel Read: Where exactly do you live and what is the native language?
Gustavo Alvear: I live in Cali, Colombia in South America. My native language is Spanish.
DR: Can you tell us about yourself?
GA: My name is Gustavo Andrés Alvear. I’m 30 years old and a systems engineer. I have been working on a freelance basis for four years developing systems for small enterprises. I also worked as an analyst for two years on one large scale project (20 engineers, Java, Oracle). It was a terrible experience. Lack of discipline in our process defeated us and the project, but I learned much. At this moment, with some people that were laid off (11 of us), we are working in our free time in software product development. I enjoy requirements engineering, coding, and project management. I have been teacher of Windows, Word, Excel, Power Point, and the internet to young people and adults. I have also taught requirements.
DR: Can you describe what life is like generally where you live?
GA: For me personally life is incredible. There is a lot of freedom—and beautiful girls. The weather is great. This is a tropical city, and there are a lot of beautiful landscapes. However, we have serious security problem. Narcotraffic and guerrilla violence are common, but our president, Alvaro Uribe, is stopping this virus.
DR: What is the software development industry like there? Are there a lot of jobs? A lot of schools where software development is taught?
GA: The software development industry is very, very, very informal. People do not use standards, and there are not specialized jobs. A software developer here is an engineer, analyst, designer, developer, tester, deployment specialist, etc. all at the same time. Requirements engineering almost does not exist. Most people think only coding is important. The country has high unemployment, and software developers experience this too.
There are many schools but the quality is low. The schools confuse learning how to operate Word, Excel, and Windows with systems engineering.
DR: What kind of jobs are typical? Working by yourself for a small company? Working on a small team? Working on a large team for a large company or the government? Do programmers mostly work on a permanent basis for one employer or work independently for multiple clients?
GA: Except in companies that are dedicated to developing and selling software, the typical job for software engineers is analyst/developer. This is the same at small and large companies. At large companies that are dedicated to software development the jobs are more specialized. Programmers mostly work on a permanent basis for one employer. Here in Colombia the part time work concept is not typical like in the U.S. In your country it is common for people to work for two or three clients at the same time. This is not common in Colombia.
DR: How did you experience the "internet bubble" in Colombia's technical economy? Was it a big up-and-down in Colombia as it was in the US?
GA: I think that that the phenomenon was equal here. For example, a lot of auction sites came out, and then exploded.
DR: What technologies, platforms, and languages are popular in your country? Is there a lot of competition?
GA: 12 years ago there was only Pascal, C, COBOL, dBASE, Informix, DOS, and UNIX. Now these are replaced by VB, Oracle, Java, PHP, Delphi, Windows, and Linux.
VB, Oracle Forms, PHP, and Java have a great community of developers here. And now there is growth in demand for people that who are SAP experts. COBOL is still used, but not very much. COBOL developers are usually older people, and they earn very good money.
DR: Are there people or companies in your country who specialize in selling components, tools, or programs especially targeted for people in your part of the world?
GA: Yes, but these products are oriented to commercial industry. I don’t know of any companies that make products for Colombian developers.
DR: Is there a lot of written material about software development in books, magazines, and web sites in your native language?
GA: In my city there is only one good book store: Librería Nacional. It only sells books in Spanish—almost none in English. I buy books at that store, and I am also a frequent Amazon customer.
To help answer your question, I have prepared this table that summarizes how widely available Spanish-language books, magazines, and web sites are in a variety of categories.
|Subject Category||Availability in Spanish|
|User Interface Design||1||0||1|
|Average||1||< 1||< 1|
Figure 1: Summary of the availability of Spanish-language materials in a cross-section of software development related categories. Legend: 0-Almost nothing available; 1-Some small availability; 2-Good availability; 3-High availability.
Anther issue is that books are too expensive. I want to give you an idea of what "expensive" is for us. In my country the minimal salary monthly that the average person will earn is $350,000 (or $135 US per month, which is $4.50 US per day). This is all the money a person has to live on in a month!
In my country there are 40,000,000 inhabitants. According to studies, 20,000,000 of Colombians are "poor" (earning $2 US daily), and another 9,000,000 are "indigent" (earning $1 US daily). The proportion of poor and indigent in the U.S. is much, much lower. Colombia also has a poor reading average (less than one book per year per person). People don’t like to read.
The common range of salary for a systems engineer is between $800,000 ($325 US) and $1,700,000 ($700 US). The price of technical books is between $70,000 ($30 US) and $150,000 ($60 US). Roughly figured, technical books are around ten times more expensive for a Colombian programmer than for an American. It is difficult for a person earning a typical salary to buy a technical books.
In my city, going to school to learn a career is expensive too. A private university costs $3.000.000 ($1,154 US) per semester for five years. And every year the price goes up 25%.
DR: Which books and authors are most popular in Colombia?
GA: There are some software engineering books that have been translated to Spanish, for example, Software Engineering (6th Edition) by Ian Sommerville and Software Engineering: A Practitioner's Approach by Roger S. Pressman. An excellent project management book translated to Spanish is Rapid Development by Steve McConnell. An old reference book in the universities is Analysis and Design of Information Systems by James A. Senn. And there are some UML books from Addison-Wesley.
DR: I imagine it is pretty important for programmers in Colombia to know pretty good English in order to succeed in software development? The programming languages themselves depend on English, and then there's the documentation.
GA: Yes, programmers are aware that English is very important for success in software development. But as I said, the average person only reads a book per year. The global level is 12 books per year. There are programmers that prefer wait for a Spanish version of a programming language.
For programming languages, people learn the English-based syntax and declare their variables in Spanish. Comments and documentation are also usually written in Spanish. In the universities, it is mandatory to read technical texts in English, but in the jobs it is not.
Many programmers are only focused on coding and not design or testing. It’s incredible that many programmers are not familiar with books like The Practical Guide to Structured Systems Design by Meilir Page-Jones and Code Complete by Steve McConnell.
We have serious problems in the area of software design. We confuse structured design with spaghetti design. We think that the basis of structured design (cohesion, coupling, hidden information, factoring, etc) are obsolete.
DR: Has the Open Source movement had an impact in your country? Are a lot of people using Open Source tools?
GA: Yes, yes, and yes. PHP, MySQL, and Linux are growing. For example, right now there is a site called ParqueSoft (www.parquesoft.com) where open source tools are used a lot. ParqueSoft is a development community made up of groups of +/- 3 developers, who are typically young people. In my country these kinds of enterprises are called "micro-empresas."
DR: How much of the population in your country has internet access?
GA: Less than 10%, I think.
DR: Would you say there is a lot of opportunity for technical entrepreneurs in Colombia?
GA: Yes, but I think that technical entrepreneurs have focused too much on money instead of software development methodology. Many entrepreneurs think that creating an enterprise is easy. In the technical market the concept of an entrepreneur is new. An entrepreneur must have communication and sales skills as well as technical skills. All the young people want to be consultants, but first you have to be in the battle.
DR: Can you tell me more about the project with your eleven colleagues?
GA: Yes, of course. As I said, we are eleven people: nine Software engineers (24 to 33 years old), one mechanical engineer (55 years old), and one education specialist (53 years old).
When I was in university (9 years ago) I began, with a partner, to investigate models for testing of students in an educational setting. We had studied 2 models of testing: qualitative and quantitative. They have differences. The idea was to merge both models into one "meta-model" that supports both. Another improvement in our meta-model is that it can be applied to testing of both students and people working in companies. We knew if we wanted to give real power to this meta-model we would have to implement it in an internet programming language. At that time we only knew how to code in VB 5.0. We were lost. The idea stopped for 3 years.
After the big project we were all on failed, an engineer from the team said to me, "Hey, I heard that you were working on a meta-model for testing. Why don’t you create a team and build it?" Eureka!! With the project failure that had just happened, I was able to get the right team to build the meta-model. We have been working together now for a year and a half.
We decided to do the things right and create a software methodology from our experience and then create a product using that methodology. Early on it was hard because we had to organize the software process, the team culture, the administrative process, and the quality process. But at this moment we feel very good. We decided take the necessary time to build our product with quality. If and when we finish it, if we don’t make any money from it, that’s okay. We’re enjoying ourselves and learning the process.
DR: What is your favorite thing about software development? What attracted you to it? Why do you do it?
GA: Software requirements and project management are my favorite—software requirements because I like to speak with the user, find out his troubles, and offer real solutions. Then I can speak with the developers and understand their technical needs so that I can give the developers what they really need in order to do the work. I also like to create analysis and design models. The phrase "software requirements" is honey for my ears.
I like project management because I feel very good motivating people, helping them, making the work enjoyable. I like to solve problems with a team and make decisions as a team. I try to create synergy. One person can be very good and create incredible things, but a team can create much more.
DR: What programming languages and technologies do you personally use on a daily basis?
GA: At the moment I’m not working as a developer. My job is related to the development of methodologies, requirements engineering, and project management. But in the past I worked as a programmer in Cobol for three years and Visual Basic 5 for five years. I have also developed in Visual Basic for Applications in Word and Excel.
DR: What kind of applications do you develop?
GA: I mostly have developed information-based applications oriented around forms and data. I don’t develop operating systems, word processors, compilers, etc.
DR: Thank you for this exchange, Gustavo.
GA: You are welcome. I hope this information will be useful.
[End of Interview]
This interview was conducted via email during August and September of 2004. We are grateful to Mr. Alvear for his time and effort. Mr. Alvear can be contacted at galvear A_T hotmail DOT com.
- Universidad de los Andes
- Universidad EAFIT
- Universidad Industrial de Santander
- The ParqueSoft community of entrepreneurs
- Cali, Colombia
About the Global Development Series
developer.* is based in the United States, but our focus is global. The purpose of the developer.* Global Development Series is to bring software professionals separated by political and geographic boundaries closer together. This series will gather a collection of interviews with software developers from around the world. We can all learn from each other. Just as scientists strive to share research across borders and athletes do their best to set aside geopolitical tensions to compete in the International Olympics, software professionals collaborate every day on code that knows no boundaries. It may take awhile, but someday this series will hopefully make it around the globe.