Lakshan Hettiarachchi
Verified Expert in Engineering
Back-end Developer
Kandana, Western Province, Sri Lanka
Toptal member since October 26, 2021
Lakshan is a back-end Java developer with 8+ years of experience working on long-term projects. At Toptal, he has worked full-time for 1+ years for the text analytics platform Sintelix based in Adelaide. Before joining Toptal, he worked in the airline domain for AirArabia, from software architecture design to development and testing. With strong analytical and problem-solving skills, Lakshan plays a pivotal role in shaping the systems he builds to be robust, productive, and maintainable.
Portfolio
Experience
Availability
Preferred Environment
Ubuntu, IntelliJ IDEA, Java, Scrum, Spring Boot
The most amazing...
...thing I've developed is an aviation messaging system used by Air Arabia to communicate with other airlines, airports, and government authorities in real time.
Work Experience
Full-stack Java Developer via Toptal
Sintelix
- Integrated and configured ABBYY FineReader OCR API with Sintelix.
- Worked with Cdata connectors such as CSV, JSON, MongoDB, MySQL, Oracle OCI, PostgreSQL, SQL Server, IBM DB2, Microsoft Excel, and XML to facilitate data ingestion to Sintelix. In addition, certain GUI components were also built to filter the data.
- Implemented an audit functionality to track ingestion and changes to the documents ingested to Sintelix. This included a UI to filter and view the audit entries.
- Designed and implemented a license quota usage tracker in Sintelix to record the usage of different quota types such as text, OCR, and media and display it on a UI. The quota consumption records were modeled as a blockchain to maintain integrity.
- Created a blueprint to secure and enhance the licensing and activation key mechanism of SIntelix online and offline clients to minimize the tampering of licensed quota usage while being client-friendly on offline usage reporting.
Tech Lead
ACCELaero Portfolio
- Played a key role in feature development, performance testing, performance tuning, and facilitation for multiple government certifications during and after the inaugural production release of the aeroCONNECT aviation messaging system.
- Developed parsers using ANTLR and JavaCC for various airline message types, such as PNRGOV and SSIM, in formats such as EDIFACT. In addition, these messages were also created using FreeMaker and Apache Velocity to facilitate 2-way communication.
- Worked on production stabilization and change and feature request development for the aeroPRICE airline ticket pricing system.
- Developed flows, such as inventory roll forward, inventory transfer, and reprotection of aeroINVENTORY, the airline seat inventory system.
- Provided Level 3 support on a monthly roster basis for the aeroCONNECT airline messaging system and the aeroPRICE airline pricing system.
- Conducted employee training sessions on Apache Kafka.
- Participated in recruiting, training, ranking, and placement of experienced, fresh, and undergraduate developers.
Senior Software Engineer
ACCELaero Portfolio
- Worked on architectural design, technology selection and training, development, testing, production stabilization, and support of microservices and the aeroCONNECT stream processing-based messaging system using Spring Boot, Kafka, and Couchbase.
- Developed parsers using ANTLR and JAVACC for various airline message types, such as PNRGOV and SSIM, in formats such as EDIFACT. In addition, these messages were also created using FreeMaker and Apache Velocity to facilitate 2-way communication.
- Conducted employee training and evaluation on the Couchbase NoSQL database.
- Enhanced the aeroLINE FLEET aircraft rotation and routing system to automatically reschedule flights based on the receiving air traffic flow and capacity management (ATFCM) messages.
Research and Development Engineer
ACCELaero Portfolio
- Researched and developed genetic algorithm-based airline crew scheduling and rostering algorithms in Java to distribute duties and pairings among different types of flight and cabin crew.
- Devised mathematical formulae to calculate roster cycle targets for flight and cabin crew members on entities, such as flying hours and duty hours, while respecting their annual, quarterly, and monthly limits on flying and duty hours.
- Programmed crew duty and fatigue-related rules in the crew rostering system back end in Java to facilitate the generation of legal rosters.
- Analyzed airline operation manuals to identify the requirements of new client airlines and accommodate their crew management and rostering requirements.
- Created BIRT reports, such as journey logs and duty sheets, generated from airline crews' duty data.
- Assisted technical writers with technology and domain knowledge while they compiled user manuals for the airline crew management system.
Research and Development Intern
ACCELaero Portfolio
- Worked on mathematical models and algorithms that automatically distribute cargo inside an aircraft and achieve an aircraft's safe and efficient weight and balance configuration. I used FICO Xpress and Java in these projects.
- Developed algorithms that solved the aircraft rotation and routing problem using FICO Xpress and Java.
- Built an IATA SSIM message parser to automatically extract data in a standard SSIM message using the JavaCC parser generator.
- Proposed a graphical solution to enable crew planners and schedulers to independently program the crew and fatigue-related rules into the automated crew rostering system.
- Researched machine learning-related algorithms to improve the quality of the flight and cabin crew rosters in automatic rostering concerning fairness and robustness.
- Investigated the suitability of graph databases (Neo4j) over relational databases (Oracle Database) to represent and store data related to airline crews and duties.
Experience
aeroCONNECT
Air Arabia currently uses this system in all of its hubs. It has provided a centralized platform for users to manage millions of messages of various specifications during the day-to-day operation of the airline. The integration time of new messages was reduced to two days as a result of this system and its architecture.
I was involved in architecture design, technology selection and training, development, testing, production stabilization, and support.
aeroINVENTORY
aeroPRICE
aeroLINE CREW
I was engaged with this product for 2+ years, developing the algorithm that distributes crew to pairings and duties. I used a modified genetic algorithm to improve the quality of the output of the solution. I was also involved in understanding airline fatigue-related rule manuals; programming the rules into the system; developing a formula for fair distribution of flight hours, duty hours, and various duty types among the crew; developing reports; and assisting technical writers with product knowledge for the manuals they wrote.
aeroLINE FLEET
aeroPORT TRIM
Education
Bachelor's Degree in Computer Science and Engineering
University of Moratuwa - Moratuwa, Sri Lanka
Certifications
AWS Certified Solutions Architect – Associate
Amazon Web Services
Skills
Libraries/APIs
Protobuf, REST APIs, API Development, JMS, Apache Lucene
Tools
IntelliJ IDEA, IBM MQ, ANTLR, SonarQube, Jenkins, Jira, Git, ActiveMQ, MQTT, RabbitMQ, JavaCC, JProfiler
Languages
Java, SQL, C, JavaScript, HTML, CSS
Frameworks
gRPC, Spring Boot, Spring, JUnit, Mockito, PowerMock, Hibernate, Spring Microservice, OAuth 2
Paradigms
Design Patterns, Object-oriented Programming (OOP), Constraint Programming, Scrum, Microservices, Microservices Architecture, Continuous Integration (CI), Scalable Application, Linear Programming, REST
Platforms
Apache Kafka, Amazon Web Services (AWS), Oracle Database, Ubuntu, Oracle, Debezium, Docker, BIRT
Storage
Databases, Relational Databases, Couchbase, PostgreSQL, Spring Data JPA, NoSQL, MySQL, JSON, Neo4j, Redis
Other
Software Architecture, Architecture, Solution Architecture, APIs, Technical Hiring, Interviewing, Code Review, Source Code Review, Back-end, Distributed Systems, API Integration, Integration, EDIFACT, Electronic Data Interchange (EDI), AWS Certified Solution Architect, Micro SOA, Algorithms, Web Platforms, Message Queues, Containers, Task Analysis, ABBYY FineReader OCR API, Scalable Architecture, Operations Research, OCR, CI/CD Pipelines, Real-time Streaming, Cloud Architecture, FICO Xpress, Cdata, Full-stack, Front-end Development, HTTP REST, Full-stack Development
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring