Hilmi Bakhari is an experienced developer with 16 years of experience, and is still actively coding. We met him at PyCon MY 2019, and invited him for an impromptu interview on the career path of a software developer, which he graciously accepted.
What has been your involvement in PyCon?
I attended PyCon MY in 2016 and put down my name as a volunteer for the organizing committee of PyCon APAC in 2017. Since I am a technical person and had no experience in event organizing, I volunteered for ticketing function, and started working on it from January 2017. By March, one of the co-chair had to pull out due to personal reason, so I was asked to step up and fill the role of the co-chair, which expanded my role to include a few more tasks. PyCon APAC being a regional conference, I saw more diversed participants compared to the PyCon MY local conference.
What other developer’s community are you involved in?
I am also a part of the Java developer’s community. I sign up as an Associate Member to the Java Community ProcessSM (JCPSM) Program, which provides me access and opportunity to review and provide feedback for the Java Specification Requests (JSRs).
What programming language do you specialize in?
I had been using Python test framework simulate SMS between 2012 and 2016 when I was working on a research and development project in MIMOS. Most of my projects there were focused on proof of concept and semantic web.
Before that I had been using Java, C, and C++ for my previous jobs with Motorola in Cyberjaya, and Altobridge in Dublin, Ireland. In Altobridge, I work on micro GSM and aeromobile incorporated on Airbus, at that time the company was a vendor for Maxis on local connectivity.
I am currently working in Digital.RHB, the online banking for RHB Bank. The scope of work includes services for business-to-business (B2B) and expense reimbursement system. I use Java for front end, and Python for analysis and database.
What do you look for in a job opportunity?
The culture. When the headhunter contacted me about the opening in Digital.RHB, I was initially hesitant, thinking that the work culture in banks might not be the same as the technology companies that I’m used to. In my previous jobs I had interviewed job seekers coming from software development in banking and observed that they had very specialized roles, which offered less room for exploration.
I’m glad that I still went for the interview, after which I was offered a tour of the office and ended up spending half a day there, witnessing how the team worked and conducted a sprint.
Digital.RHB has been established for 2 years, and adopts some digital nomad or startup culture, which includes remote working and flexible hours. We apply agile development methodology (as opposed to waterfall development methodology), we carry out our development in iteration, and plan for sprint sessions, and work on features by the quarters of the year. There is much respect towards technical expertise from the management team. The system architects set a direction for feature development, the software developers are welcome to counter propose their ideas in order to fine tune it.
Are the developers in the industry fairly compensated in general?
Yes, working in software development role the salary is satisfactory. In Motorola, the positions of system engineers, network engineers, software development engineers generally receive compensation that is slightly above average. Altobridge as a startup also offered competitive salary. In MIMOS the pay scale for the job grades was also satisfying.
What advice would you offer someone who is new to the industry?
Keep reinventing yourself. Technology changes rapidly, there are always new things to learn. I went back to school to do a graduate study by a combination of coursework and research and graduated with Master of Engineering in Computer Systems Networking and Telecommunications from UKM last year, more than 10 years since my undergraduate study.
In addition to that, it is important for a software professional to find good mentors. These are persons who have more experience in the industry, or are experts in the skills that you wish to improve upon. Ideally they should also be willing to guide you along the way. A good mentor would help you to focus, accelerate the learning process, and act as a supportive peer.