Original Post is located here: https://www.facebook.com/acumaticarussia/posts/323585055218750
If you ask me about my 12 years story in Acumatica, I would say it was the story of luck multiplied by hard work.
Part 1: Moscow: Hiring
It was all started right after bachelor’s degree at my university. I started to search for a job and a friend of mine recommended a company with name SW Soft. I went there on interview where Mike and Andrew gave me two tasks (we still give it to all new candidates). Later these guys became great mentors for me. One of the tasks I have completed only from the second attempt. I still remember my fillings from that day, but good conclusion I took from that memory – mistakes are fine, everyone has it but much more important how you react on it – we should accept it and move one
Wait, this is a story about Acumatica, how did SW Soft come in? At university we learned Pascal, C++ and C#. Even that time, Pascal was not really popular for commercial products. When Mike asked me about the language, I said C#. With that answer I got offer to Acumatica as it was a C# project and SW Soft mostly used C++. I’m still not sure why I choose C# versus C++, maybe it was an internal passion to simple, beautiful and logical things. Developer like a sculptor creates an art and you should be in love with tools you use to build a masterpiece.
Fortunately, you never know what horizons will open to you a small decision. I think it was example of great luck for me, where one answer changes my future.
Part 2: Moscow: Junior
I became an employee #8 at Acumatica. It was very small and quiet office where 7 amazing developers used to code 12 hours a day without interruptions. However, I was a new and green, so I cannot even imagine, how much time my colleagues spend to help me. Thank you Mike, Andrew, Alex!
Growing older I realized how valuable is to share your knowledge with your padawans. There is no more time for lone warriors, even small and young team with a solid vision and targets will be more productive than any of the lone stars. It is just simple – five brains will generate more ideas, predict more issues and overcome problems faster, with more options. Five humans will support each other where you are lost alone. Certainly, you don’t realize all this stuff in your fist job! On the first job I was just damn lost!
My first real task at Acumatica was a build script and then a bit later installer. Surprisingly for me these 2 parts are still present and used in Acumatica. Despite to the shame that I feel when I think about code done as a student, I think it was a success as it works till now. Oh, yeah, I had there a script with an exit code 1986, that is my birth year.
However, my third project was abandoned even before the first use. We tried to build a tool to migrate data from Solomon ERP to Acumatica and it did not really work. Now I feel that I had not enough accounting knowledge to complete this task. I think that it is difference between developer and programmer. Developer really thinks and analyses what needs to be done before doing it. Every hour that you spend in analyses phase saves you days during the programming. So, my recommendation now – learn a subject before you do something.
Part 3: Moscow: Middle
Acumatica grew up a lot and changed a few offices. I was a part of the platform them and expand my knowledge to database, user interface, integration, localization, snapshots, security, single sign on, platform and so on.
When you are in the middle you need to learn even more than if you are junior. Several things I would like to highlight from that time:
- It is important to know how technology and tools you use work inside. This knowledge makes you an expert. If you know that there is a hammer – you are worker, if you know about inertia, gravity, angles and materials – you are an expert. Curious the things you have!
- Simplicity is the best thing. Over-architecting, over-designing, over-optimization, premature optimizations are the bad practices. When you think there is a problem, you only guess it, but when you see the problem, you can fix it.
- How easy is it to remove your code from the product is as much important as how fast you develop this code.
- If you see a conflict or competing or filling jealousy with someone, then you are on the wrong path. These feelings will destroy you inside and all things you do will be destructive. We are builders, creators. There will be never enough paints, buildings and sculptures in the world. The same with programs, modules, algorithms.
- It is important to learn how to work with other peoples. Your colleagues can do much more for you than you think. If you find a way to interact with them, then this is a path to be senior. Some people like to speak, some like be important, some want compliments. Different people have different keys. Try some and find a key to your colleague, this will give you an incredible boost.
- Find and take responsibility on something. There is always a place that no one takes care. People always want to avoid extra work and problems. Find function, module or a peace of code that no one wants and take it. Now you have an area of expertise.
- Be hungry. Hungry peoples take everything and learn from as many possible sources as they can. Your colleagues, meetings, projects are amazing source of experience. If you afraid of them, you miss a world of opportunities!
- Keep contacts. Your contacts are your assets for the future. If you are on training, conference, class or support case, use it to keep connection with persons. Excel file, phone or linked in. Not important, but certainly will help.
All these things need time and passion, so we are coming to the most important – love your work. You can be happy and productive only if your work is your hobby. If you feel yourself fighting with it, you may be in the wrong path. The same with tools you use.
Part 4: Singapore, Consultant
There is an Idea that you need to change things you do once in 5 years. The first year you lost; the second you start to understand how it works; the third you become good; the forth you are an expert and give advises to others; on the fifth you teach others. Then you just change everything and start from the scratch. Sounds easy, right? Wrong. It is not easy to change something – your body, soul and mind stick with it and you need to fight against yourself.
Leave your home town, flat, friends, job, car, habits and fly somewhere with 1 bag of clothes is not easy. Arrive somewhere you don’t know anyone is even more complicated than leave. But possible and even very interesting!
In Singapore I was lucky again and took a position of the guy who just left an Acumatica office and team really needed a replacement. For me it was not a dream to leave home town and it was very hard decision that I resisted a lot. Time after it, I think it was one of the greatest experiences I ever had. Another point to overcome your fears and be open for changes. Thanks to my mentors, who helped me to make this decision. Actually it is my human nature to speak with others, during the communication with colleagues/mentors your brain gives you more positive motivation that helps to make a better decision.
Acumatica Singapore office is a completely sales-oriented office so the work there was very new for me as a developer. Demos, training, customers support, business trips, implementations, architecting and solution building, customizations. When you are a developer, you must really break your mindset. This is hard and challenging too. But as soon as you do it you expand your vision to the things that you even haven’t seen before.
From my Singapore work experience I remember a several stories that I want to share with you.
Training – I remember my first financial training. I had to training consultants in the foreign language for the foreign people with subject I never used. I had to explain Vietnamese consultants how to reconcile bank transactions, where I had never done this before. I remember how I was exhausted after a week as every day of the training just consumed all my energy. However, the rule: “don’t understand something – explain to others” – works perfectly. You really learn for ages things you tried to explain. So next time you lost somewhere, try to explain to your junior.
Implementation – I had 2 projects where I had to do a full implementation of Acumatica to the client. Of course, when you do it you have to deal with accountant and you have to adjust their processes to meet Acumatica system. Ok, that is challenging to explain accountant what they need to do in their area and their language if you have insufficient of knowledge. Yes, it takes some time and you will learn accounting and get a few new grey hairs. Don’t afraid of challenges.
Blog – When you grow to certain point of experience you reach a time when you can share your knowledge with the new commers. Beside a common reason of knowledge sharing you can find a motivation for yourself in this area. Helping and teaching others is very connected with biological and social of human creatures and not only brings progress to your students but helps you to realize your potential and diversify your daily job. My boss Laurent asked me to start it and I really thank him for that idea. As a small bonus it becomes your portfolio in the future.
Business – when you work with clients (support, implementation, demos) you deal with business and their processes. As soon as you understand the business does, you understand what business needs. And then you can reconstruct how business works. This is a fabulous knowledge.
Customizations – after a few customizations I’ve done, I realized that how customizable your code is as much important as how easy to read it. I recommend you to think about customizability when you write your code.
Part 5: Current
Now after the Singapore I took another challenge in Canada (with many doubts as well) to help Acumatica grow and prosper. I will use existing experience and gain new to build something great!
One thing I know that Acumatica even it is a small company with some problems and issues, but it is a place with huge amount of possibilities. We are on the edge of technology and business where you can learn both. It is just amazing – you can build several professions/expertise in the same company: develop, support, educate, consult, implement and more. Not much other companies give you these chances.
Another thing I want to highlight is that gain Acumatica experience is a sort of investment. While Acumatica is doubling revenue every year, it will be more and more companies who will need people with Acumatica experience. However, comparing to our competitors there is not a big market for Acumatica experts and that is valuable. Working and learning Acumatica will open many doors to you when you decide so.
Thank you very much for reading this!