Leniel’s Software House (software customizado para seu negócio)
My 1st year of Chemtech
On September 1st I completed 1 year at Chemtech.
So far I’ve worked on projects that demanded what I knew and what I didn’t know yet. This is the kind of thing I ever wanted. While I was looking for a job opportunity this was what I had in my mind.
The Computer Engineering graduation helped me to learn the basics so that I could be prepared to start working.
The real learning happens when you get to the market and start building real software that controls a huge industrial plant for example as is the case of a control panel that shows to the users the state of variables scattered across a huge industrial field consisting of a lot of machines and processes. Software that you build, test, homologate and deploy in production environment. Software that is built in partnership with the client - be it through e-mail, by phone or in person. This kind of thing gives you a valuable experience.
The projects I’ve worked on during this 1st year are the following:
Braskem - Control Panel
ASP.NET, C#, CSS, NHibernate, SQL, ORACLE, IIS
Braskem - Billing and Measurement System
ASP.NET, C#, CSS, NHibernate, Web service, SQL, ORACLE, IIS
Chemtech - Site (nicknamed chemsite)
Liferay, Java, CSS, SQL, MySQL, Tomcat
CSN - MES
VB 6, SQL, MS SQL Server
As you see I’ve used different technologies in each project. This strengthens your brain as you advance in the learning path and gives you the mindset you need to carry on so that you can work in the front line with more responsibilities and more exciting and engaging projects.
During 1 year I could learn a lot of things and made the difference constructing software products used by a lot of people (hey, take a look at the about me section at the top right side of the blog). See that I wrote a lot of people instead of millions of people. Someday I’ll achieve that "millions of people" :o)
Chemtech is a great company to work for. People are always ready and motivated to help you. Even my manager once in a while helps me. He sits by my side and starts coding with me! Everyone wins when one member of the group wins. This is the thought!
All in all, great company and great people together. That’s why Chemtech is making the difference in Brazil’s engineering scenario.
If you’re looking for an engineering job opportunity in Brazil, consider Chemtech. A company that thinks ahead of its time envisioning a great future for Brazil and the world.
I could enumerate lots of good points about Chemtech, but if you want to know more, go ahead and visit the chemsite. There you’ll find a bunch of information.
Despite a great start in my professional career I’ve passed through some life changing experiences as for example, moving from Volta Redonda to Rio de Janeiro. Wow, this moving has made me think about different aspects of life. Many things I thought before getting in Rio de Janeiro needed to be rethought. In the end you grow mentally, emotionally and spiritually. This is the time in life when everything you’ve learned has to be put in action.
All in all, I’m doing at Chemtech what I like to do and that’s all folks for my 1st year.
A big thanks to everyone who has helped me to get here. I won’t name anyone. I’ve known a lot of people. People that helped me a lot. You know who you are.
Thanks Jesus for making real what I’ve asked you, for being with me all the time and for teaching, capacitating and advising me through this journey/endeavor.
Chemtech compliments newly graduated engineers
Last Friday, January 16th, I was complimented by Chemtech. The company gave compliments to all employees that finished their college course in 2007/2008.
The computer engineers including me beside Rubião from right to left.
We got together at the 23rd floor of Rio de Janeiro’s office where Luiz Eduardo Ganem Rubião (CEO and founder of Chemtech) talked a little bit about the company’s perspectives giving us some insight related to life, economy, the job market and ongoing and future projects.
The way Rubião thinks about life subjects, mainly being an optimist is how I face the day to day. There’s no time to be wasted with illusions and we should always think positive. Doing so we’ll for sure harvest good fruits.
The following is the transcription of the letter I received with a present (a book of my area of specialization - computer engineering) …
Rio de Janeiro, January 16th, 2009
Dear Leniel Braz de Oliveira Macaferi,
Young people like you represent the future of technology. With your know how you can contribute to Brazil’s development so that it stands out in the worldwide technology. It is in the knowledge, in technology that a differential arises.
Chemtech is proud to have been with you in your first steps to engineering and for us still being together. It’s with satisfaction that today we call you an engineer! A Chemtecheano engineer, a Brazilian engineer.
We’re together in this journey that starts with your graduation. Success!
A strong hug from the Chemtech family.
Arriving at Chemtech
It's with great pleasure that I'm writing this post. I finally got a job after 5 months of eager expectation. I'm going to work at Chemtech.
I've been sending lots of resumes to almost all IT related companies from Brazil and to some international companies since I got out of ITA-Petrobras.
Fortunately, on July 10 I received an e-mail from Chemtech asking for my grade transcripts related to the computer engineering course. I then sent the transcripts to them on July 30. On August 28 I was invited to participate in a in house interview that would take place the next day. On August 29 I went to Rio de Janeiro. During the interview conducted by two managers and one software developer, a job proposal for a Junior Analyst position was made and I accepted. The area of specialty is computer engineering.
I dreamed about getting a job in a top technology company. From the moment I began the Computer Engineering course in 2003 my constant thought has been to get a position in a company that is attractive.
Today what was a dream is now pure reality.
I'm extremely motivated to be a part of the Chemtech team!
I thank Jesus Christ for helping me to achieve this goal. After all, it's for Him that I live! :)
C# Word Permuter-Shifter
On April 23rd I had a job phone interview. The talk was about a Software Development Engineer in Test (SDET) position at Microsoft.
I already blogged about a C# Thread Safe Circular Queue, which was one of the questions of a screen test (prior to a phone interview) I completed on January for the same Microsoft job position.
On this last interview we (me and the Microsoft employee-interviewer) would talk a little bit and then get to the coding questions. It didn't happen as expected. Firstly the Microsoft interviewer tried to call me on my cellphone. I just couldn't hear a word of what he was saying. The sound was very low. Then we decided to start with the coding questions and then on the phone land line we would talk so that he could explain more about the position, etc.
We started a meeting on Microsoft Office Live Meeting. I was asked about a simple and easy question.
The question:
Write a program that changes the position of the words of a given sentence. For example, given the sentence "How are you going" as input, the output should be "are How going you".
Simple, isn't it? I thought that too at the moment.
As you can see, the first and second words change of position and then the third and forth words change of position and so forth.
The interviewer explained that I could write any code. It didn't need to be written with the syntax of a programming language, it could be a pseudocode.
I'm so used to code using code auto-completion (IntelliSense) and the debugger that I just didn't write any good code to solve the question. It was really frustrating. All what I needed to do was clear in my mind but I just couldn't express it. Was that the case of me being nervous? Beats me.
Today I decided about writing a post with a possible solution to this simple programming question. I opened Microsoft Visual Studio C# Express and wrote some code. In just 5 minutes I had a working code that did the job.
There are things in life that are really weird. I passed more than 45 minutes trying to write a pseudocode and then with the help of IntelliSense and debugger catching my mistakes, things flowed flawlessly and rapidly. Why that faster? I don't know how to explain it, maybe because of IntelliSense and the presence of a handy debugger!
For sure the solution I present here isn't the better, but it's a solution and that's what was asked.
Bellow is the code I wrote:
namespace WordPermuter { class Program { static void Main(string[] args) { List<string> sentences = new List<string>() { { "How are you going my dear?" }, // are How going you dear? my
{ "I am going fine honey." } // am I fine going honey };
DoPermutation(sentences); }
static void DoPermutation(List<string> sentences) { foreach(string sentence in sentences) { // Split the sentence when it reaches a white space var splitted = sentence.Split(' ');
// Increment the counter on a scale of 2 for(int i = 0; i < splitted.Length; i = i + 2) { if(i < splitted.Length - 1) { var aux = splitted[i];
splitted[i] = splitted[i + 1];
splitted[i + 1] = aux; } }
foreach(var str in splitted) Console.Write(str + " ");
Console.WriteLine();
}
}
}
}
What's the purpose of this code? Aha... It isn't the code itself but what approach you took to get to a solution. The interviewer wants to see how is your thinking process. No matter if you coded it wrong, but at least you should show something. As the recruiters always say: "Think it loud so that we can help you."
After a solution has been presented, the interviewer will probably ask you what if questions. What if I did this way? What If I did that way? What is the breach? What are the possible bugs?... The list of possible questions is innumerable.
I think my solution is OK! If you find any bug, please tell me.
English-Portuguese Freelancer Translator
I just created an account at ProZ. ProZ is the translation workplace providing translation service and translation jobs for freelance translators and translation agencies. It's is also home to the world's largest community of professional translators.
Take a look at my Translator profile at ProZ.
If you ever need a translation work be it from English to Portuguese or from Portuguese to English, please, feel free to contact me at
I really like this kind of job, that is, to translate any type of material related to my area of expertise: software, technology and computer related stuff.
I translate ScottGu's blog from English to Portuguese - see Translating ScottGu's Blog to Portuguese post. ScottGu's blog is one of the most accessed Technology blogs in the world.
I'm looking forward to work with you.
Governmental and Private Scholarships in Brazil
This post aims to discuss a recent experience I had. It's is directly related to the problem of governmental and private scholarships in Brazil.
I recently had to stop working in a highly exciting project called GradeBR - Rede Galileu. I just couldn't afford it. I can explain it better.
I wrote a post in which I discuss about the job I had gotten at the Computational Transport Phenomena Laboratory located at the Aeronautics Technological Institute (ITA). I was really motivated. What I had thought for my future was happening. I had gotten a great job opportunity at one of the most prestigious academic institutions here in Brazil. I’ve been planning to go to ITA since college. I had already talked about a master’s degree project and was even flying to meet with Rede Galileu’s work group. I had the first opportunity to travel in an aircraft. Believe it or not, it’s not so usual here in Brazil. Everything was perfect. I was just missing the company of my parents of course.
I started on the job on February 11th, and for almost two months (till April 4th) I didn't receive the scholarship that had been promised. As a matter of fact, I’ve been invited by the laboratory’s lead to go to ITA as I described in this post. There is an old saying that is as follow: if Leniel will not go to the mountain, the mountain must come to Leniel. I think it translates well what happened to me.
The reasons for the scholarship not being granted: pure bureaucracy, corruption and disregard to the development of the Brazilian nation.
I know there are lots of sheets of paper that must be read before the final signature granting the scholarship, but in this case, it wasn't the sheets of paper. The fact is that this scholarship was not from the government but from a private company called Petrobras that is one of the major global oil & gas market players. The scholarship agreement between a private company and a federal institution is established and managed through a Research Foundation that has as its motto: foster the development of projects related to research and development (R&D).
I won’t detail what specifically happened but the reasons I wrote above serve as a start point to think about why my scholarship didn’t take place.
My case is related to a private scholarship. I know people that don’t even have the possibility of getting a scholarship granted by the government. Why that? You may ask. My answer is: actually there is almost no condition of fostering research and development in this country. Because? You may ask. My answer: things were worse, today they are getting better but we still don’t have a serious investment plan to prepare human resources and to finance research and development projects. The rules are so complex that even a PhD professor doesn’t know how to ask a scholarship for his students. There are so many embarrassments. When there’s a scholarship the value paid is incompatible with real life. They only pay you for project related material and trips. They don’t think about the expenses related to relocation, about your daily necessities. They think you’re a research and development slave. In addition, you can’t work on other projects, that is, you must be a full-time researcher receiving a part-time scholarship. Do you get it? The work you do isn’t valued as it should be.
A nation can only grow and give fruits if and only if it has a really well prepared workforce. To have such really well prepared workforce it's necessary to invest in education. Education includes all sorts of knowledge fields, not only research and development, though in this specific post I treat about it.
I particularly like the Wikipedia's definition for Education: "Education means 'to draw out', facilitating realization of self-potential and latent talents of an individual", that is, without education, great part of people can't realize their potential, their talent and consequently the nation doesn't leverage as everyone expects.
It's not surprising that this country "Brazil" has a history marked by corruption and poor education or would it be a history marked by poor education and corruption? I think the former is worst given that is poor education that leads to corruption and all sorts of maliciousness. That's why Brazil is still a underdeveloped country. People grow governed by bad politicians that even don't know how to speak their mother tongue. Again this is a case of poor education. Education was so neglected that the ones that should represent the country don't know how to speak correctly. Can you understand that? It's all a matter of education. Your brain without proper instructions (education) can't do much. It's just like a computer hardware without software. I could develop more into this subject but I won't. I think this is sufficient to pass the message.
Getting back to the main topic: I had to relocate to a different city called São José dos Campos that is 140 miles far away from my parent's home in Volta Redonda. To stay there I had (my parents had) to pay for my lodging, lunch, etc. There's no free lunch at all! Without the scholarship that was previously promised I couldn't continue on the job. So what should I do? I just had to get back home and unfortunately abandon that great project. Was that easy? Surely no.
The people governing this country think that you are a robot researcher without emotions and aspirations.
What rest to comment about it? Oh, that there isn't incentive from the government to give scholarships to the ones that really want to continue their academic studies be it through a Master's degree or even a Doctor's degree. You see, I only could finish my graduation in Computer Engineering because my parents did work hard and set aside some money for my study. That's not easy here in Brazil. The major part of families can't afford a particular college. What is the result? More people without the proper education, more people with latent talents not realizing their potential. This causes sometimes more corruption, that is, without the proper means for achieving what people really want they take another easier paths to get there.
While this story doesn't change, we'll continue to have frustrated plans. Brazil won't change its status quo up to the time that every single person has conditions to study, to acquire the so called culture what will definitely permit that their aspirations be realized.
I'd like to write better words here, but if I did I would be more one liar. For some (the richest ones) everything in Brazil is going fine. The stock market is breaking records and that's just what matter. For others (as is my case) there's no free lunch!
New job at ITA-Petrobras
Last month was a busy one. On February 11th I started working on a project called Galileu. This project is being implemented by a joint venture between Petrobras and a group of universities. Amongst those universities is the Aeronautics Technological Institute (ITA).
I got such job opportunity through ITA's mechanical engineering department, more specifically the Computational Transport Phenomena Laboratory. I received an email from its group leader Marcelo de Lemos. I answered the email right way sending him my resume. They needed someone with expertise in programming languages and high performance computing (HPC). I was eagerly waiting a job opportunity because I finished the computer engineering course and there was no place to work. This opportunity was just what I needed.
My work is really exciting. Firstly I was given material about the message passing interface (MPI) and the Rocks clusters distribution for the Linux platform. After that I started playing with the Linux cluster, which was already installed. Who installed it was a great friend I met at the lab. His name is Arkady Petchenko.
As a lab we experiment with the available HPC platforms. The last two weeks I've been playing with the Windows Computer Cluster Server 2003. I was responsible for installing the Windows cluster.
I'm also doing development of code in C/C++ and Fortran. I compile and build applications that can explore the full potential of a cluster through the MPI API.
It's fantastic to see how a parallel program performs on different numbers of processors.
In future posts I'd like to discuss about the aspects of the technologies I work with. It's great stuff! I love programming languages and the parallel computing world is a fascinating one. With the increase of the number of processors in a single chip, we're going to see a vast amount of parallelized code being executed on distributed computing systems. Parallel APIs as the Microsoft Parallel Extensions for .NET framework are evolving rapidly. This will for sure change the way we think when working with code and specially with clusters and supercomputers.
IT giants: IBM, Google and Microsoft
This year was a remarkably great one and I'd like to mention why I think so.
On January 14th I received an e-mail from IBM that stated that my resume had been chosen and that they were inviting me to participate in the first stage of the recruiting process in Rio de Janeiro. The first stage was composed of a logical reasoning test, an English test and a composition. The estimated duration of the stage was about 2.5 hours. OK, I went there on January 19th at 3:00 P.M. and I did all the tests. On January 23rd I received an e-mail confirming that I had been approved in the first stage (tests) of the IBM passport (as they call the whole process). They stated that they’d schedule the second stage (group dynamics) as soon as possible. I received other e-mail on the same day and I was greeted with the following phrase: “You’ve been approved in the first stage and we’d like to invite you to the second stage (group dynamics) of the IBM recruiting process.” Again I went to the same place Botafogo, Rio de Janeiro on January 24th at 9:00 A.M. to take part in the second phase. In a timespan of just two days I received a message stating the following: “We thank you for your participation in the second stage (group dynamics) of the IBM passport internship program and we inform that your profile doesn’t fit in any of the open opportunities we have at the moment. We emphasize that this result doesn’t eliminate the possibility of a new entry in the next IBM internship program after a period of 12 months from this participation. Respectfully, IBM Brazil (Recruiting and Selection).”
From the above experience I have good memories. In the first stage I went to Rio de Janeiro with my dad. That was a great trip and an unforgettable one. My dad sad at the time: I think you’re going to succeed in it. But it wasn’t the time yet. I remember of a moment in which I was in the hall of IBM’s building right before the first stage and for sure I knew that was just the beginning of a great journey. At that time I was heading to the last two terms of the computer engineering course. This year I had to develop the final project too.
By the end of the year I realized it was time to start searching for a place to work. So I created a LinkedIn account and sent my resume to some places.
One of the messages was sent to a contact I got at LinkedIn site on December 13th. The message title was Job Opportunity and the recipient was Kerry Xin, a software engineering recruiter that works for Google. He replied my email asking me what's my phone number and confirming that he would call me. I then replied the e-mail writing: "There is only a problem: here in Brazil not everyone has access to broadband internet. So, I still use a dial-up internet connection. This way, my phone will be occupied while I'm on the internet. If you can, set a time for us to get connected on the phone." He then replied with the following: "I would like to call you at 8pm Brazil time, which is in half an hour. Is that ok?" Of course it was OK. I was going to talk with someone from Google. That was above my expectations. I just replied that message stating that he could call me at 8:00 PM. And so I talked to him on the phone. That was my first English phone call. We talked for about 15 minutes. The talk was about the available locations to work at Google and the specific area to direct three technical questions. I answered the first two questions but wasn't sure about the last one. In a later e-mail I sent him my resume and wrote that I can read and write almost everything in English, but to talk is still really strange (I'm not in the right environment). I need an opportunity to practice. I know I can master the English language if I'm in the right place. After a week I received a message from Kerry with the result of the preliminary phone interview. The hiring committee's feedback for the Google/SRE position wasn't positive. He thanked me for my time and interest in Google. According to them my background and experience was carefully reviewed and unfortunately they couldn't find a position that is a strong match with my qualifications at the time. He then affirmed that he would keep my resume active in their system and try to match my profile with new opportunities and would reach out to me if they find an opening for which I may be qualified. I then replied the "Thank you from Google" e-mail with the following: "Thank you for considering me. It was a pleasure to talk to you on the phone (my first English phone call). For sure I'll remain enthusiastic about Google. It's a splendid company! I use Google's services everyday and it plays a great role in my life." I think it was a good FIRST experience with Google.
More to come...