Home » Blog » software

Meet Sashidhar, our new Software Test Engineer

Posted by Markos Gkogkos
Comments Off on Meet Sashidhar, our new Software Test Engineer

With the new-year, more new members joined the team of Agiboo, strengthening our efforts investments in the scope and quality of Agiblocks.


Agiblocks it’s not just a CTRM system, is a specific CTRM system designed according to the needs of small and big enterprises, which are trading agricultural oρ soft commodities.


We enhance and grow our functionality base through frequent releases, with respect to our release management we are investing in our quality processes aiming to work towards continuous delivery.


Sashidhar joined recently our Software Testing department and we couldn’t miss the chance to annoy him with a short interview during the lunch break.


Are you ready to meet our new Software Test Engineer, Sashidhar?



Sashidhar, Software Test Engineer

Sashidhar, Software Test Engineer




















-Hi Sashidhar, welcome on board! Can you tell us a bit about you and your background?


Hi, thank you, I am also excited joining you! Well, I’m Sashidhar Joganna a test professional. I have 13+ years of experience in the software development process. I have worked in banking and energy sector carrying out test activities for software development using the traditional waterfall approach and agile methodologies. In addition, I’m also a tech savvy person with knowledge of C#, mainframes and few scripting languages.



-What is your experience in testing software systems?



I have vast experience in testing complex systems in banking and geoscience industry. In the banking domain, have worked for wholesale and retail markets testing different applications related to trading and mortgages. Also, managing test activities from requirement analysis to execution of tests along with business stakeholders in order to satisfy their needs has been my key skills.



-What is are your key goals and expectations working in Agiboo?



Test automation is indeed a challenge to keep the quality of the product high. Especially within this fast-changing market and have experience in setting up an automation test framework. For example, some tools to credit to my knowledge are Coded UI, Test Complete and Specflow.


Moreover, implementing test automation for continuous delivery is one of the key goals. Thus, I have been working through which and remains in line to my role at Agiboo, where I will utilize my skills to provide a quality product to our customers.



-Well, enjoy your lunch Sashi and success for your new role!






7 steps to become a successful CTRM software architect

Posted by Markos Gkogkos
Comments Off on 7 steps to become a successful CTRM software architect





Realizing the role of a software architect


A software architect role requires, besides the experience for the job, also communication skills and the love of working in a team. When you have this combination of soft skills by your team members, then building a strong CTRM software becomes easier to achieve.


It’s really common for all of us when we are users of a software or application and especially when it comes to work, we just need to fulfill our daily tasks spending the less time and pain. What happens though behind the pretty interface of the CTRM software we use?


When we start realizing that, even though we trust a machine or a software to do for us the functions and tasks we want, in reality there are people with normal lifes behind who write the code and build this software.

Henadzi - software architect

Henadzi – software architect

One of our software architects, Henadzi, has a unique problem solving approach and follows his own plan for success. Every day at work becomes an interesting challenge and he is ready to overcome and become greater than the previous day.


Do you want to meet the face and the success plan of Henadzi? Let’s see his 7 steps to become a successful CTRM software architect.





The 7 steps of success



1. Constantly learn recent technologies and software design approaches.

You can update your agenda with the latest conferences and software development events, watch presentations in internet (YouTube) and follow online courses (for example Pluralsight). Learn new things daily is one of the keys for being successful.



2. Learn by reading code.

Find open source projects you’re interested in and look at how solution is broken into projects, how they implement design patterns and how they solve some different issues. For example take a look at .net core on github.



3. Learn by writing code.

The only way to learn something is by doing it. Have a side projects just build something that you wish. It’s nice to have a project for trying out ideas, patterns, frameworks, etc. The best in software development is that there’s always something new.



4. Be able to communicate ideas to non-technical people.

Be loyal to them and see them like your kids. Be ready for question like: “Why we should refactor it, when it is working fine?” or “What is business value…?”



5. Lead team by example.

Implement examples that you team can learn new things by following you.



6. Software architects must always be aware of the end goal.

Never take shortcuts if they violate your architecture, it will you cost a lot in the future.



7. Constantly improve your solution, but never too much at once.

Learn where to stop. If you do refactoring or migration to new technologies, make a plan that you can do it in multiple steps. Then more changes your make than higher impact is on the project, especially if the one is commercially live.



CTRM software architect expert



Now that you know some tips from Henadzi, try to combine your knowledge with CTRM applications and also with all the commodity trading industries. Then you will have a sphere perspective and knowledge of things and you will be considered a unique asset for any business. Being a specialist to what you do requires hard work and time to learn.


Strong CTRM software systems remain powerful because there are people behind a “friendly to user” interface writing all the complex code and setting the whole architecture.



5 CTRM vs ERP system differences for commodity trade

Posted by Markos Gkogkos
Comments Off on 5 CTRM vs ERP system differences for commodity trade

time to read





What is CTRM?



A lot of people confuse CTRM software with ERP technology. Of course there a lot of similarities and ERP technology is the bedrock of CTRM systems. However, CTRM is created to assist the daily specific functions in the complex world of commodity procurement and trade.


CTRM or Commodity Trade and Risk Management software is a dedicated software for commodity trading transactions and business processes. Its architecture, applications and functions should assist the daily work of all involved in a commodity trading company.


Meanwhile, it offers solutions to the traders and management to control and minimize the risks of the commodity trading activities and the business as a whole. CTRM is the software-pillar for all departments in a commodity company, like logistics, trading, finance, IT and the management.


With this core software, employees can perform their daily tasks and transactions accurately and efficiently and in the world of today CTRM is available through cloud solutions and on mobile devices.



CTRM is more than just an ERP system




It is common knowledge that ERP systems do not really cater for commodities companies’ needs. It is the character of the trading business that differs from standard wholesale and/or manufacturing business that creates the challenge. These differences we cannot just overcome by adding functionality to an ERP, it requires a fundamental different approach.


You simply can’t use the same pan to cook eggs, pasta or stew meat. Even if you manage to fit the stew inside an egg pan, you will not be able to cook it properly. Parts of it will be spilled out on the kitchen stove. So it works with the commodities businesses.


You simply can’t have your ERP system perform all your commodity functions, transactions and risk monitoring. Even if you attach 10 more “Add-ons” offered by the ERP supplier, still your “stew” will be spilling out of the pan while you are cooking it.




Differences ERP vs CTRM



1. Coping with versatility and variances



ERP software supports standardized wholesale, manufacturing and services environments. ERP supports these environments from a transactional perspective and integrates with accounting applications. Its architecture eliminates variance in processes to ensure adequate production processes, related transaction management and accounting processes. In the end most ERP’s reduce complexity and record transactions and value based on concepts like Bill of Materials or Work Break Down structures. ERP is usually centered about creating certainty and defining cost.


CTRM instead, does not reduce complexity, it enables companies to use complexity and with variance to their benefit. And this complexity and variance is intrinsic to commodity businesses. At the start the quality aspects of soft and agricultural commodities may vary during the lifetime of these commodities and form the basis for the spread in monetary values and risks in trading. Down the road, one trades commodities in different markets and different currencies under different terms and thus the monetary trading values differ in different environments as well. CTRM enables a company to manage these complexities and benefit from then, not just to eliminate them for process or accounting purposes. CTRM is usually centered about opportunity and value.



2. Facilitating hedging of trades



ERP applications mostly offer different application environments for different the activities impacting value. Interdependence between activities or variable value drivers are usually difficult to manage in ERP systems. For examples when a company is using dynamic price curves, trading or hedging strategies. In an ERP environment there are limitations in viewing and using combined data information from for example contracts, commodity hedges or currency swaps, and thus limits integral position management, valuation and forecasting.


A CTRM tool designed for commodity procurement or trading is based on long/short position management. CTRM enables companies to manage hedge portfolios either intrinsically or through the use of derivatives and/or swaps.  CTRM gives you freedom and agility in portfolio valuation and forecasting.



3. The variance in pricing



ERP systems are usually cost oriented and use fixed/cost prices to plan and project certain things. In commodity industries this approach is too restrained. It is the versatility and the variability in prices that matter and ERP applications have difficulty coping with that. For example capturing or using “to be fixed” pricing structures, or fluid logistic terms have proven to be difficult to manage for ERP systems.


CTRM systems solve these “issues” of future priced contracts or variable delivery terms. Commodity Trade and Risk Management systems cater for flexible volumes, prices and delivery dates without such restrictions of ERP systems. Since the orientation of CTRM is on value rather than on cost, it enables companies to make pricing decisions based on value rather than on cost.



4. The architecture



Most ERP software systems have a rather linear architecture, such reflecting the structure of the business they support. This means that they follow a certain line of functions and execute transaction according to their structure. Think, for example, a Work Break Down structure, a Bill of Material, a Recipe, or simply a departmental structure of a company. When you would picture such a structure you could imagine a pyramid of rectangular with linear association to each other from beginning to an end. Transactions and value development through the structure would follow a rather predefined and mostly sequential flow.


CTRM systems have a unique and far from linear architecture. The architecture needs to cope with the versatility and variance and needs to support creating value from it. One could envisage such as a combination of a diamond type of a structure combined with a spiral funnel. Even though we could observe an initial linearity, transactions and value development through the structure would follow an iterative and unpredicted or even paradox path. This is the essence of a CTRM! The architecture! The Architecture is the core of your system and has to be compatible to the characteristics of your business.



5. The risk management



The aforementioned limitations in the structure and capabilties of ERP systems prevent ERP in the most important need of the commodity trading business: managing value and risk. Commodity business have critical differences from wholesale or manufacturing or services businesses. They are just not so simple and straightforward!  Even within the commodity industries there are differences. The rules of the game, the terminology, contracts, calendars, trading methodologies are just different for different commodities. But also from company to company. So if an ERP cannot adequately capture transactions, cope with versatility and variance, and supports mainly linear processes, how can it adequately support commodity risk?


The functionality of CTRM software overcomes those difficulties in managing your commodity business. These ERP cannot perform efficiently due to its cost orientation and its linear architecture. Managing long/short positions, hedge portfolio’s, variable pricing, forward price curves and a value orientation is the ‘right to exist” for CTRM systems. For a commodity trading business or even a procurement business a CTRM with the right business fit is a prerequisite for short term performance and long term existence. When selecting a CTRM for your business, you better choose a CTRM system that supports the characteristics of the commodities you manage.





(function(i, s, o, g, r, a, m) { i['GoogleAnalyticsObject'] = r i[r] = i[r] || function() { (i[r].q = i[r].q || []).push(arguments) }, i[r].l = 1 * new Date() a = s.createElement(o), m = s.getElementsByTagName(o)[0] a.async = 1 a.src = g m.parentNode.insertBefore(a, m) })(window, document, 'script', 'http://www.agiboo.com/wp-content/cache/caos-analytics/analytics.js', 'ga') window['ga-disable-GTM-KWBC5TQ'] = false ga('create', 'GTM-KWBC5TQ', { 'cookieName': 'caosLocalGa', 'cookieDomain': 'www.agiboo.com', 'cookieExpires': '0' } ) ga('send', 'pageview') setTimeout( "ga('send', 'event', 'adjusted bounce rate', '30 seconds')", 30000)