I'm looking for a part-time remote job.

Hire me


I'm the author of:

Mastering Redmine is a comprehensive guide with tips, tricks and best practices, and an easy-to-learn structure.

Check the book's project or

Buy the book

Social pages of the book:

By buying this book you also donate to Redmine (see this page).


Follow me:

Personal report for 2012

Jump to the Achievements in 2012 if you want to skip the backstory. To check the personal report for 2013 go here

Paragraphs like this one can also be skipped, if you do not want to read too much details.

Prologue

I started my career as an operator (it’s lower than an engineer) in the Ivano-Frankivsk National Technical University of Oil and Gas. At the same time I started to study part time at the same university (therefore, I was an operator – engineer position required education). However, till the time I graduated from the university I developed into the head of the Software & Networking Laboratory, created a network management system for the university (called INACC), which is used by the university even now, created the website, which is also still used, and much more.

The work in the university, however, was not much paid. So soon after the graduation I decided to leave…

I was a very promising young IT specialist, well known in Ivano-Frankivsk (the city I live in). I had even authored an article (review of local websites’ design) in one of local news papers… Therefore, it was not a problem for me to find a job. At that time the only good paying IT area in the West Ukraine was outsourcing. So first I started to work remotely with DevCom, the Lviv outsourcing company, where I developed from the senior engineer into the team lead, then I got an offer from the small local company Softjourn

Why did I choose Softjourn?.. This was the only company with the office in Ivano-Frankivsk and I did not want to move elsewhere (I love this city). Also the project, which I was about to enter, was outsourced by a department of a huge company, one of Fortune’s top 1000 U.S. companies. Therefore, Softjourn expected the project to grow to about 50 developers in future and I was going to be one of managers on this project.

I entered Softjourn as a senior software engineer in 2006, that is, almost 7 years ago… Before this I was well known, had prospect, was working as a head of a laboratory and as a team lead. I believed, that it was the start of my new professional life and great career. In fact, it was the end of my professional life and the time, when I started to “disappear”… Softjourn became the hugest disappointment in my life as I really felt, that it was my “home” company.

Review of my 6 years in Softjourn

I usually do more than I’m expected to… Thus, INACC and the website of the university were totally voluntary (while later I got paid for the website a bit). But why did I do these projects?.. Because I felt, that I needed to improve things! So I did similar free-time projects in Softjourn as well. Thus, during first years I created a CD writing web interface on the company internal server, Internet usage statistics site and much more. In fact, the majority of the projects, which are hosted on this website and were created before May 3, 2011 (the day, I launched the site), were created for the company voluntarily, for no cost and in my free time.

Later on I started to notice, that no one in the company actually needs, respects or supports my endeavors… In outsourcing it’s just normal to do your job and nothing more. And if you do more, you draw too much attention to self, become the person no one understands, things you do look useless and redundant. This was especially noticeable in Softjourn, the company with a very weak management…

In addition to trying to improve things programmatically I tried to improve management. Thus, I was trying to work on local resources for easier knowledge sharing, initiated creation of the motivational system, helped with the career development system, worked on systems for collecting employee feedback, consulted management on different issues, tried to resolve some issues personally and so on… All failed!

Yes, till my last day in Softjourn this company had no motivational or career development system! And I doubt they do even now…

Prying into management issues, of course, led to the conflict with the management…

But why did I do this?.. I see no reason to work at the company, if this company can’t be your “second home” – it’s just the waste of time then! So I craved for improvements in the company and, I believe, I did all I could do for them. But finally I understood, that it was the wrong company… Not because of management only – other employees, actually, showed no interest in changes as well.

Unfortunately it was too late to leave the company right away as I had borrowed money from the company for my new apartment. So my decision was to continue working untill I repay not doing anything special for the company. To satisfy my natural needs to do something I also decided to continue working on my projects and to create a website for them on the company’s behalf.

If honestly, being in conflict with the management and closing all my other voluntary projects in the company I hoped that this effort will help me gaining some tolerance. But I was wrong…

I waited about a year for a server to be provided for establishing the company’s Labs site… Finally the server was allocated. I did all the job related to setting up the server. In particilar, I set up and configured Redmine, created the theme, wrote Redmine plugins for the site, added my projects including just written plugins and started promoting the site on third-party resources. While it was officially approved I was doing this mostly in my free time (no one canceled my main tasks and, in fact, I did not want to). So this way the Softjourn Labs site was launched (this site does not work for about a week already)…

The company’s director used to hire his friends and relatives and then give them management positions. Thus, the project manager and the head of the Development Department were close friends from his previous job. Another his friend from the previous job and his classmate took team lead positions. The office manager position was taken by the godfather of his child…

Soon after the launch the control over the Labs site was granted to a director’s friend, the head of the Development Department, without even letting me know. Very soon the head published his own personal project on the site (the web UI for Serviio) and decided to remove the registration requirement for downloading files without consulting with anyone involved in the project… Till that moment (during the promotion process) I had already mentioned on third-party sites, that the registration was required, and the whole site had been reviewed and approved by other managers. Finally, my short remark on his action led to the brawl, review of my work in the company and moving all my projects to my own site in approximately a month after the launch of Softjourn Labs…

The remark ended with the meeting of approxemitely 20 idlers… On this meeting some managers, friends of the director and of the head of the Development Department, complained against me for everything (e.g. the director declared, that employees complained about me every day) and only two people tried to defend me. The meeting lasted for more than a hour and it was not even once said, that the Softjourn Labs, the reason for the meeting, was totally my effort. Moreover, the management found two my “abuses” on the Labs site, each of which were, actually, approved before…

At that moment it became clear, that no tolerance or appreciation could be expected from these guys. Having understood this I moved all my projects, which were hosted on Softjourn Labs, to my own site, this one (yeah, that’s how this site was created). They were 8 out of 9 projects hosted there…

But the last thing, that made me leave right away, was that management put a new manager on my project without letting me know (again). In fact, I got to know, that my manager had been changed, only in the first day of this manager on my project. Moreover, that was the guy, who had been caught slandering me (in general, he likes to “review” other people) and who threatened me twice. He was one of the director’s friends and one of those, who complained against me on the meeting…

During my work in Softjourn I was not always able to leave for vacation. Therefore, till the time I was about to leave the company I had around 93 days of unused vocation… In fact, the company did not compensate me for those daysIn Ukraine for tax optimization IT companies pay two salaries – the official staff salary and the enterpreneur salary (the latter is much bigger). Vacation compensation is controlled by the government but only accordingly to the official staff salary. So, Softjourn compensated me for 93 days accordingly to this salary only…

Why public reporting?

I was really lucky to leave Softjourn this way!.. After I left, my salary and reputation grew vast. Of course, it was my work (my projects), what helped me. But let’s remember, who I was before Softjourn – a young and prospective specialist, well known in Ivano-Frankivsk. And at the moment I have moved my projects to my site, before leaving Softjourn, I was no one in Ivano-Frankivsk and even in Softjourn! That was the guy I would be without my projects (I guess, I would have hard times finding new job)… I spent years to gain reputation in Softjourn (and really used to get it) and lost it quickly, while trying to improve things. My mistake was that I worked mostly for the company future and was very close to loose mine… A kick from the company management made me correct the problem, actually…

I’m quite sure, that this should never happen again! In no way I should ever loose even a year more! That’s where the public review of the past year can help… While it’s not the best way to be motivated by sharing your achievements and failures for everyone, but it really makes you do the best at least to write something in the report. Another goal of this public report is to get criticism – please write any your thoughts, comments, suggestions etc!

Achievements in 2012

So let’s see now, what I succeeded in:

  • My best achievement in 2012 is Kayako!.. In a week after I had moved my projects to my own site I got an offer to develop Redmine plugins for the Kayako Forge from this company’s CEO Varun Shoor. After successful finishing of projects I got an offer to work for Kayako remotely, what I was doing all the year and continue doing now… I’m very proud to be a member of the Kayako team, who develops the most cool and advanced helpdesk solution in the world! Also this is the first time I understand what, for whom and why I develop (in outsourcing this is very ambiguous). During the year I developed from an employee, who worked on additional features, to an employee, who reengineers one of the core features of the product (Oops, did I let the cat out of the bag?)… So I’m very happy to know, that I gained such confidence! Another thing, which makes me very proud of my work for Kayako, is that this company develops a source-available product (meaning that the source code is available to customers: not only for review, but also for modification – they just may not redistribute it).

At the beginning of my work with Kayako I also developed the Ruby library for the Kayako API, which can be found here. I’m very proud of this as this is the code, which was developed for the very famous company, which is also open source and includes my name. After 6 years of my work in outsourcing it’s very unusual to be able to declare, that I developed this library… Also the Kayako Ruby API library was the first (and currently the only) gem I put on the RubyGems.Org.

  • Kayako was not the only very famous company I worked for during 2012… Another one was oDesk (not some customer through oDesk but oDesk itself)! While still working for Softjourn I found a question regarding the plugin development in some LinkedIn group. That was oDesk recruiter, who asked the question (did not notice this at the beginning). This way I was offered to join the oDesk Professional Services team and to help implementing custom plugins for Redmine (Yes, oDesk also uses Redmine!). After finishing several plugins I also developed the oDesk Ruby API library. Unfortunately, due to some changes in oDesk plans I could not finish the library yet (but it’s functional) as they decided not to use it for now… At the moment I continue negotiating to finish (what means, mostly, testing and bug-fixing) and to publish the library on Github and RubyGems.

During 2012 I also got two other offers of full-time remote work. There were also many smaller remote part-time offers and full-time offers with moving to different locations. And, of course, really a lot offers from ukrainian outsourcing companies (Just for the case – kill me if I ever get back to outsourcing again!)

  • During my work in outsourcing I always felt, that I was a different developer… I never really liked the kind of work, when you have very strict limits (i.e. develop, what you were told to). Perhaps, to get some freedom, what felt like breathing fresh air, I used to develop something else, e.g. Redmine plugins. Of course, there were similar developers… But all they were newcomers. Having worked several years in outsourcing everyone became happy with what they get (Or seemed to be happy?) and really changed as developers (that was another thing I tried to stop, by the way). Not sure why I was influenced less… But I really thought, that I was not influenced at all. During 2012 I also understood how big was that influence… So 2012 became a year of recovery and I don’t really think I recovered enough (But did recovered much!).
  • In 2012 another great event happenned – I met Anastasia, my daughter! This happenned on April 21. When born she was 3.7 kg and 52 cm long (I was present at her birth). At this moment she’s a half of year old.
  • In 2012 I also started another interesting Redmine project… If the work for Kayako was a shock for many my acquaintances, this project, I’m sure, will be even more shocking (not because it’s “cooler” but because it’s less expected). I don’t name it in public yet, while I’m allowed to. At the moment I have finished around 80% of the work, so a little to wait for release.

If you are interested in the progress of the project, follow the #MyOtherRedmineProject tag (that’s the name I reference it) on my Twitter.

  • In 2012 I also learned (a little) to make photos. Some my photos are available for review on my social pages here (facebook) and here (vkontakte). Another good thing about this is that I finally got some hobby.

Soon after creating my accounts in social networks I fell in love with the photography. I used to spend much time watching photos of photographers. Then I understood, that I really should not do this, as having seeing professional photos, which were made with mirror cameras, I really lost interest in making photos with my Canon DC50 video camcorder… I could not enjoy photos made by it no more. So after Anastasia was born I decided, that I want to get pleasure from seeing photos of my daughter. And I bought Nikon D90.

Of course, in 2012 there were also failures…

Things I failed in 2012

Actually, I planned to do more in 2012:

  • Thus, I hoped to publish the oDesk API library before publishing this report (to include it as another achievement). To my excuse, failing to do this is not completely my fault…
  • Having started the work on the #MyOtherRedmineProject I promised to do my best to complete this project earlier than due date. But instead I go as scheduled… Not too bad, but. Still, I believe, I did my best.
  • This year I was quite busy due to some circumstances (some of which has been mentioned above)… So my work on open source projects slowed down dramatically. Therefore, I failed to add support for recent versions of Redmine (in particular, 1.4.x, 2.0.x and 2.1.x) and ChiliProject (3.x) to my plugins. I’m also very disappointed with huge changes in Rails 3 and Redmine 2 – these changes really added a lot of work for me (almost each my plugin introduces a hard-to-resolve issue)
  • I also miss Orangutan… And have huge plans for reviving it. But I failed to do this as well! I don’t think, that I will work on reviving Orangutan before I finish porting all my other plugins to Redmine 2.x.
  • And, finally, I planned to write this report in my WordPress installation… But failed! My blog is not yet ready.

Of course, I could just install WordPress and any theme for it (in fact, I did installed WordPress already) but that’s not how I work. If I do anything, I always try do it at the best level! So the blog will appear later. Meanwhile, this report is published here (will be, perhaps, moved to WordPress, when ready).

So what is the secret?

I’m proud of what I have achieved so far! Not sure if this is really worth to be proud of though (I’m quite self-critical)… But it is worth being definitely for a former outsourcing guy! So, for the case you wonder how did I succeed to achieve this, here is the “secret”…

In fact, no secret exists!.. I don’t think, that I’m smarter than other developers, and I don’t think, that I know more than other developers (instead, I always felt that I know too little). The only difference is how do I do the job – I always do it in the best possible way! If I need to do more changes than asked, I persuade the customer to let me do this, if I think, that the system is missing something to work better, I persuade the customer to let me develop this something and so on. Sometimes I even do something without asking the customer for approval, but I do this in my free time and let the customer know, that it has been done.

From customer satisfaction, my position, salary and job, end user satisfaction and application purity (in wide sense) I usually choose the last… As I believe, that the application purity guarantees the rest.

So the “secret” is just my work… In particular, the “secret” are my projects, which were to promote Softjourn but, as result, promoted myself. This promotion helped me to be found by Varun for custom plugins development. My work for Kayako showed me as a good developer, so I got the offer to continue working full time. Same with oDesk and #MyOtherRedmineProject – my work, i.e. my plugins, showed, who I am and what can I do. So, if you want to repeat my success (if you believe it is) be a developer! If you can’t or do not want to – change the profession! Don’t waste your time for outsourcing…

 

Comments

Also available in: Atom

Add a comment